import { hex16 } from './HexUtil';
import { getUsagePageName } from './UsagePageNameDict';

export function getUsageName(usage: number) {
    const kUsageNames: any = {
      // Generic Desktop
      0x00010001: 'Pointer',
      0x00010002: 'Mouse',
      0x00010004: 'Joystick',
      0x00010005: 'Gamepad',
      0x00010006: 'Keyboard',
      0x00010007: 'Keypad',
      0x00010008: 'Multi-axis Controller',
      0x00010009: 'Tablet PC System Controls',
      0x0001000A: 'Water Cooling Device',
      0x0001000B: 'Computer Chassis Device',
      0x0001000C: 'Wireless Radio Controls',
      0x0001000D: 'Portable Device Control',
      0x0001000E: 'System Multi-Axis Controller',
      0x0001000F: 'Spatial Controller',
      0x00010010: 'Assistive Control',
      0x00010011: 'Device Dock',
      0x00010012: 'Dockable Device',
      0x00010030: 'X',
      0x00010031: 'Y',
      0x00010032: 'Z',
      0x00010033: 'Rx',
      0x00010034: 'Ry',
      0x00010035: 'Rz',
      0x00010036: 'Slider',
      0x00010037: 'Dial',
      0x00010038: 'Wheel',
      0x00010039: 'Hat Switch',
      0x0001003A: 'Counted Buffer',
      0x0001003B: 'Byte Count',
      0x0001003C: 'Motion Wakeup',
      0x0001003D: 'Start',
      0x0001003E: 'Select',
      0x00010040: 'Vx',
      0x00010041: 'Vy',
      0x00010042: 'Vz',
      0x00010043: 'Vbrz',
      0x00010044: 'Vbry',
      0x00010045: 'Vbrz',
      0x00010046: 'Vno',
      0x00010047: 'Feature Notification',
      0x00010048: 'Resolution Multiplier',
      0x00010049: 'Qx',
      0x0001004A: 'Qy',
      0x0001004B: 'Qz',
      0x0001004C: 'Qw',
      0x00010080: 'System Control',
      0x00010081: 'System Power Down',
      0x00010082: 'System Sleep',
      0x00010083: 'System Wake Up',
      0x00010084: 'System Context Menu',
      0x00010085: 'System Main Menu',
      0x00010086: 'System App Menu',
      0x00010087: 'System Menu Help',
      0x00010088: 'System Menu Exit',
      0x00010089: 'System Menu Select',
      0x0001008A: 'System Menu Right',
      0x0001008B: 'System Menu Left',
      0x0001008C: 'System Menu Up',
      0x0001008D: 'System Menu Down',
      0x0001008E: 'System Cold Restart',
      0x0001008F: 'System Warm Restart',
      0x00010090: 'D-pad Up',
      0x00010091: 'D-pad Down',
      0x00010092: 'D-pad Left',
      0x00010093: 'D-pad Right',
      0x00010094: 'Index Trigger',
      0x00010095: 'Palm Trigger',
      0x00010096: 'Thumbstick',
      0x00010097: 'System Function Shift',
      0x00010098: 'System Function Shift Lock',
      0x00010099: 'System Function Shift Lock Indicator',
      0x0001009A: 'System Dismiss Notification',
      0x0001009B: 'System Do Not Disturb',
      0x000100A0: 'System Dock',
      0x000100A1: 'System Undock',
      0x000100A2: 'System Setup',
      0x000100A3: 'System Break',
      0x000100A4: 'System Debugger Break',
      0x000100A5: 'Application Break',
      0x000100A6: 'Application Debugger Break',
      0x000100A7: 'System Speaker Mute',
      0x000100A8: 'System Hibernate',
      0x000100B0: 'System Display Invert',
      0x000100B1: 'System Display Internal',
      0x000100B2: 'System Display External',
      0x000100B3: 'System Display Both',
      0x000100B4: 'System Display Dual',
      0x000100B5: 'System Display Toggle Int/Ext Mode',
      0x000100B6: 'System Display Swap Primary/Secondary',
      0x000100B7: 'System Display Toggle LCD Autoscale',
      0x000100C0: 'Sensor Zone',
      0x000100C1: 'RPM',
      0x000100C2: 'Coolant Level',
      0x000100C3: 'Coolant Critical Level',
      0x000100C4: 'Coolant Pump',
      0x000100C5: 'Chassis Enclosure',
      0x000100C6: 'Wireless Radio Button',
      0x000100C7: 'Wireless Radio LED',
      0x000100C8: 'Wireless Radio Slider Switch',
      0x000100C9: 'System Display Rotation Lock Button',
      0x000100CA: 'System Display Rotation Lock Slider Switch',
      0x000100CB: 'Control Enable',
      0x000100D0: 'Dockable Device Unique ID',
      0x000100D1: 'Dockable Device Vendor ID',
      0x000100D2: 'Dockable Device Primary Usage Page',
      0x000100D3: 'Dockable Device Primary Usage ID',
      0x000100D4: 'Dockable Device Docking State',
      0x000100D5: 'Dockable Device Display Occlusion',
      0x000100D6: 'Dockable Device Object Type',
      // Simulation Controls
      0x00020001: 'Flight Simulation Device',
      0x00020002: 'Automobile Simulation Device',
      0x00020003: 'Tank Simulation Device',
      0x00020004: 'Spaceship Simulation Device',
      0x00020005: 'Submarine Simulation Device',
      0x00020006: 'Sailing Simulation Device',
      0x00020007: 'Motorcycle Simulation Device',
      0x00020008: 'Sports Simulation Device',
      0x00020009: 'Airplane Simulation Device',
      0x0002000A: 'Helicopter Simulation Device',
      0x0002000B: 'Magic Carpet Simulation Device',
      0x0002000C: 'Bicycle Simulation Device',
      0x00020020: 'Flight Control Stick',
      0x00020021: 'Flight Stick',
      0x00020022: 'Cyclic Control',
      0x00020023: 'Cyclic Trim',
      0x00020024: 'Flight Yoke',
      0x00020025: 'Track Control',
      0x000200B0: 'Aileron',
      0x000200B1: 'Aileron Trim',
      0x000200B2: 'Anti-Torque Control',
      0x000200B3: 'Autopilot Enable',
      0x000200B4: 'Chaff Release',
      0x000200B5: 'Collective Control',
      0x000200B6: 'Dive Brake',
      0x000200B7: 'Electronic Countermeasures',
      0x000200B8: 'Elevator',
      0x000200B9: 'Elevator Trim',
      0x000200BA: 'Rudder',
      0x000200BB: 'Throttle',
      0x000200BC: 'Flight Communications',
      0x000200BD: 'Flare Release',
      0x000200BE: 'Landing Gear',
      0x000200BF: 'Toe Brake',
      0x000200C0: 'Trigger',
      0x000200C1: 'Weapons Arm',
      0x000200C2: 'Weapons Select',
      0x000200C3: 'Wing Flaps',
      0x000200C4: 'Accelerator',
      0x000200C5: 'Brake',
      0x000200C6: 'Clutch',
      0x000200C7: 'Shifter',
      0x000200C8: 'Steering',
      0x000200C9: 'Turret Direction',
      0x000200CA: 'Barrel Elevation',
      0x000200CB: 'Dive Plane',
      0x000200CC: 'Ballast',
      0x000200CD: 'Bicycle Crank',
      0x000200CE: 'Handle Bars',
      0x000200CF: 'Front Brake',
      0x000200D0: 'Rear Brake',
      // VR Controls
      0x00030001: 'Belt',
      0x00030002: 'Body Suit',
      0x00030003: 'Flexor',
      0x00030004: 'Glove',
      0x00030005: 'Head Tracker',
      0x00030006: 'Head Mounted Display',
      0x00030007: 'Hand Tracker',
      0x00030008: 'Oculometer',
      0x00030009: 'Vest',
      0x0003000A: 'Animatronic Device',
      0x00030020: 'Stereo Enable',
      0x00030021: 'Display Enable',
      // Sport Controls
      0x00040001: 'Baseball Bat',
      0x00040002: 'Golf Club',
      0x00040003: 'Rowing Machine',
      0x00040004: 'Treadmill',
      0x00040030: 'Oar',
      0x00040031: 'Slope',
      0x00040032: 'Rate',
      0x00040033: 'Stick Speed',
      0x00040034: 'Stick Face Angle',
      0x00040035: 'Stick Heel/Toe',
      0x00040036: 'Stick Follow Through',
      0x00040037: 'Stick Tempo',
      0x00040038: 'Stick Type',
      0x00040039: 'Stick Height',
      0x00040050: 'Putter',
      0x00040051: '1 Iron',
      0x00040052: '2 Iron',
      0x00040053: '3 Iron',
      0x00040054: '4 Iron',
      0x00040055: '5 Iron',
      0x00040056: '6 Iron',
      0x00040057: '7 Iron',
      0x00040058: '8 Iron',
      0x00040059: '9 Iron',
      0x0004005A: '10 Iron',
      0x0004005B: '11 Iron',
      0x0004005C: 'Sand Wedge',
      0x0004005D: 'Loft Wedge',
      0x0004005E: 'Power Wedge',
      0x0004005F: '1 Wood',
      0x00040060: '3 Wood',
      0x00040061: '5 Wood',
      0x00040062: '7 Wood',
      0x00040063: '9 Wood',
      // Game Controls
      0x00050001: '3D Game Controller',
      0x00050002: 'Pinball Device',
      0x00050003: 'Gun Device',
      0x00050020: 'Point of View',
      0x00050021: 'Turn Right/Left',
      0x00050022: 'Pitch Forward/Backward',
      0x00050023: 'Roll Right/Left',
      0x00050024: 'Move Right/Left',
      0x00050025: 'Move Forward/Backward',
      0x00050026: 'Move Up/Down',
      0x00050027: 'Lean Right/Left',
      0x00050028: 'Lean Forward/Backward',
      0x00050029: 'Height of POV',
      0x0005002A: 'Flipper',
      0x0005002B: 'Secondary FLipper',
      0x0005002C: 'Bump',
      0x0005002D: 'New Game',
      0x0005002E: 'Shoot Ball',
      0x0005002F: 'Player',
      0x00050030: 'Gun Bolt',
      0x00050031: 'Gun Clip',
      0x00050032: 'Gun Selector',
      0x00050033: 'Gun Single Shot',
      0x00050034: 'Gun Burst',
      0x00050035: 'Gun Automatic',
      0x00050036: 'Gun Safety',
      0x00050037: 'Gamepad Fire/Jump',
      0x00050039: 'Gamepad Trigger',
      0x0005003A: 'Form-fitting Gamepad',
      // Generic Device Controls
      0x00060001: 'Background/Nonuser Controls',
      0x00060020: 'Battery Strength',
      0x00060021: 'Wireless Channel',
      0x00060022: 'Wireless ID',
      0x00060023: 'Discover Wireless Control',
      0x00060024: 'Security Code Character Entered',
      0x00060025: 'Security Code Character Erased',
      0x00060026: 'Security Code Cleared',
      0x00060027: 'Sequence ID',
      0x00060028: 'Sequence ID Reset',
      0x00060029: 'RF Signal Strength',
      0x0006002A: 'Software Version',
      0x0006002B: 'Protocol Version',
      0x0006002C: 'Hardware Version',
      0x0006002D: 'Major',
      0x0006002E: 'Minor',
      0x0006002F: 'Revision',
      0x00060030: 'Handedness',
      0x00060031: 'Either Hand',
      0x00060032: 'Left Hand',
      0x00060033: 'Right Hand',
      0x00060034: 'Both Hands',
      0x00060040: 'Grip Pose Offset',
      0x00060041: 'Pointer Pose Offset',
      // Keyboard/Keypad
      0x00070001: 'Keyboard ErrorRollOver',
      0x00070002: 'Keyboard POSTFail',
      0x00070003: 'Keyboard ErrorUndefined',
      0x00070004: 'Keyboard a and A',
      0x00070005: 'Keyboard b and B',
      0x00070006: 'Keyboard c and C',
      0x00070007: 'Keyboard d and D',
      0x00070008: 'Keyboard e and E',
      0x00070009: 'Keyboard f and F',
      0x0007000A: 'Keyboard g and G',
      0x0007000B: 'Keyboard h and H',
      0x0007000C: 'Keyboard i and I',
      0x0007000D: 'Keyboard j and J',
      0x0007000E: 'Keyboard k and K',
      0x0007000F: 'Keyboard l and L',
      0x00070010: 'Keyboard m and M',
      0x00070011: 'Keyboard n and N',
      0x00070012: 'Keyboard o and O',
      0x00070013: 'Keyboard p and P',
      0x00070014: 'Keyboard q and Q',
      0x00070015: 'Keyboard r and R',
      0x00070016: 'Keyboard s and S',
      0x00070017: 'Keyboard t and T',
      0x00070018: 'Keyboard u and U',
      0x00070019: 'Keyboard v and V',
      0x0007001A: 'Keyboard w and W',
      0x0007001B: 'Keyboard x and X',
      0x0007001C: 'Keyboard y and Y',
      0x0007001D: 'Keyboard z and Z',
      0x0007001E: 'Keyboard 1 and !',
      0x0007001F: 'Keyboard 2 and @',
      0x00070020: 'Keyboard 3 and #',
      0x00070021: 'Keyboard 4 and $',
      0x00070022: 'Keyboard 5 and %',
      0x00070023: 'Keyboard 6 and ^',
      0x00070024: 'Keyboard 7 and &',
      0x00070025: 'Keyboard 8 and *',
      0x00070026: 'Keyboard 9 and (',
      0x00070027: 'Keyboard 0 and )',
      0x00070028: 'Keyboard Return (ENTER)',
      0x00070029: 'Keyboard ESCAPE',
      0x0007002A: 'Keyboard DELETE (Backspace)',
      0x0007002B: 'Keyboard Tab',
      0x0007002C: 'Keyboard Spacebar',
      0x0007002D: 'Keyboard - and _',
      0x0007002E: 'Keyboard = and +',
      0x0007002F: 'Keyboard [ and {',
      0x00070030: 'Keyboard ] and }',
      0x00070031: 'Keyboard \\ and |',
      0x00070032: 'Keyboard Non-US # and ˜',
      0x00070033: 'Keyboard ; and :',
      0x00070034: 'Keyboard \' and "',
      0x00070035: 'Keyboard Grave Accent and Tilde',
      0x00070036: 'Keyboard , and <',
      0x00070037: 'Keyboard . and >',
      0x00070038: 'Keyboard / and ?',
      0x00070039: 'Keyboard Caps Lock',
      0x0007003A: 'Keyboard F1',
      0x0007003B: 'Keyboard F2',
      0x0007003C: 'Keyboard F3',
      0x0007003D: 'Keyboard F4',
      0x0007003E: 'Keyboard F5',
      0x0007003F: 'Keyboard F6',
      0x00070040: 'Keyboard F7',
      0x00070041: 'Keyboard F8',
      0x00070042: 'Keyboard F9',
      0x00070043: 'Keyboard F10',
      0x00070044: 'Keyboard F11',
      0x00070045: 'Keyboard F12',
      0x00070046: 'Keyboard PrintScreen',
      0x00070047: 'Keyboard Scroll Lock',
      0x00070048: 'Keyboard Pause',
      0x00070049: 'Keyboard Insert',
      0x0007004A: 'Keyboard Home',
      0x0007004B: 'Keyboard PageUp',
      0x0007004C: 'Keyboard Delete Forward',
      0x0007004D: 'Keyboard End',
      0x0007004E: 'Keyboard PageDown',
      0x0007004F: 'Keyboard RightArrow',
      0x00070050: 'Keyboard LeftArrow',
      0x00070051: 'Keyboard DownArrow',
      0x00070052: 'Keyboard UpArrow',
      0x00070053: 'Keypad Num Lock and Clear',
      0x00070054: 'Keypad /',
      0x00070055: 'Keypad *',
      0x00070056: 'Keypad -',
      0x00070057: 'Keypad +',
      0x00070058: 'Keypad ENTER',
      0x00070059: 'Keypad 1 and End',
      0x0007005A: 'Keypad 2 and Down Arrow',
      0x0007005B: 'Keypad 3 and PageDn',
      0x0007005C: 'Keypad 4 and Left Arrow',
      0x0007005D: 'Keypad 5',
      0x0007005E: 'Keypad 6 and Right Arrow',
      0x0007005F: 'Keypad 7 and Home',
      0x00070060: 'Keypad 8 and Up Arrow',
      0x00070061: 'Keypad 9 and PageUp',
      0x00070062: 'Keypad 0 and Insert',
      0x00070063: 'Keypad . and Delete',
      0x00070064: 'Keyboard Non-US \\ and |',
      0x00070065: 'Keyboard Application',
      0x00070066: 'Keyboard Power',
      0x00070067: 'Keypad =',
      0x00070068: 'Keyboard F13',
      0x00070069: 'Keyboard F14',
      0x0007006A: 'Keyboard F15',
      0x0007006B: 'Keyboard F16',
      0x0007006C: 'Keyboard F17',
      0x0007006D: 'Keyboard F18',
      0x0007006E: 'Keyboard F19',
      0x0007006F: 'Keyboard F20',
      0x00070070: 'Keyboard F21',
      0x00070071: 'Keyboard F22',
      0x00070072: 'Keyboard F23',
      0x00070073: 'Keyboard F24',
      0x00070074: 'Keyboard Execute',
      0x00070075: 'Keyboard Help',
      0x00070076: 'Keyboard Menu',
      0x00070077: 'Keyboard Select',
      0x00070078: 'Keyboard Stop',
      0x00070079: 'Keyboard Again',
      0x0007007A: 'Keyboard Undo',
      0x0007007B: 'Keyboard Cut',
      0x0007007C: 'Keyboard Copy',
      0x0007007D: 'Keyboard Paste',
      0x0007007E: 'Keyboard Find',
      0x0007007F: 'Keyboard Mute',
      0x00070080: 'Keyboard Volume Up',
      0x00070081: 'Keyboard Volume Down',
      0x00070082: 'Keyboard Locking Caps Lock',
      0x00070083: 'Keyboard Locking Num Lock',
      0x00070084: 'Keyboard Locking Scroll Lock',
      0x00070085: 'Keyboard Comma',
      0x00070086: 'Keyboard Equal Sign',
      0x00070087: 'Keyboard International1',
      0x00070088: 'Keyboard International2',
      0x00070089: 'Keyboard International3',
      0x0007008A: 'Keyboard International4',
      0x0007008B: 'Keyboard International5',
      0x0007008C: 'Keyboard International6',
      0x0007008D: 'Keyboard International7',
      0x0007008E: 'Keyboard International8',
      0x0007008F: 'Keyboard International9',
      0x00070090: 'Keyboard LANG1',
      0x00070091: 'Keyboard LANG2',
      0x00070092: 'Keyboard LANG3',
      0x00070093: 'Keyboard LANG4',
      0x00070094: 'Keyboard LANG5',
      0x00070095: 'Keyboard LANG6',
      0x00070096: 'Keyboard LANG7',
      0x00070097: 'Keyboard LANG8',
      0x00070098: 'Keyboard LANG9',
      0x00070099: 'Keyboard Alternate Erase',
      0x0007009A: 'Keyboard SysReq/Attention',
      0x0007009B: 'Keyboard Cancel',
      0x0007009C: 'Keyboard Clear',
      0x0007009D: 'Keyboard Prior',
      0x0007009E: 'Keyboard Return',
      0x0007009F: 'Keyboard Separator',
      0x000700A0: 'Keyboard Out',
      0x000700A1: 'Keyboard Oper',
      0x000700A2: 'Keyboard Clear/Again',
      0x000700A3: 'Keyboard CrSel/Props',
      0x000700A4: 'Keyboard ExSel',
      0x000700B0: 'Keypad 00',
      0x000700B1: 'Keypad 000',
      0x000700B2: 'Thousands Separator',
      0x000700B3: 'Decimal Separator',
      0x000700B4: 'Currency Unit',
      0x000700B5: 'Currency Sub-unit',
      0x000700B6: 'Keypad (',
      0x000700B7: 'Keypad )',
      0x000700B8: 'Keypad {',
      0x000700B9: 'Keypad }',
      0x000700BA: 'Keypad Tab',
      0x000700BB: 'Keypad Backspace',
      0x000700BC: 'Keypad A',
      0x000700BD: 'Keypad B',
      0x000700BE: 'Keypad C',
      0x000700BF: 'Keypad D',
      0x000700C0: 'Keypad E',
      0x000700C1: 'Keypad F',
      0x000700C2: 'Keypad XOR',
      0x000700C3: 'Keypad ^',
      0x000700C4: 'Keypad %',
      0x000700C5: 'Keypad <',
      0x000700C6: 'Keypad >',
      0x000700C7: 'Keypad &',
      0x000700C8: 'Keypad &&',
      0x000700C9: 'Keypad |',
      0x000700CA: 'Keypad ||',
      0x000700CB: 'Keypad :',
      0x000700CC: 'Keypad #',
      0x000700CD: 'Keypad Space',
      0x000700CE: 'Keypad @',
      0x000700CF: 'Keypad !',
      0x000700D0: 'Keypad Memory Store',
      0x000700D1: 'Keypad Memory Recall',
      0x000700D2: 'Keypad Memory Clear',
      0x000700D3: 'Keypad Memory Add',
      0x000700D4: 'Keypad Memory Subtract',
      0x000700D5: 'Keypad Memory Multiply',
      0x000700D6: 'Keypad Memory Divide',
      0x000700D7: 'Keypad +/-',
      0x000700D8: 'Keypad Clear',
      0x000700D9: 'Keypad Clear Entry',
      0x000700DA: 'Keypad Binary',
      0x000700DB: 'Keypad Octal',
      0x000700DC: 'Keypad Decimal',
      0x000700DD: 'Keypad Hexadecimal',
      0x000700E0: 'Keyboard LeftControl',
      0x000700E1: 'Keyboard LeftShift',
      0x000700E2: 'Keyboard LeftAlt',
      0x000700E3: 'Keyboard Left GUI',
      0x000700E4: 'Keyboard RightControl',
      0x000700E5: 'Keyboard RightShift',
      0x000700E6: 'Keyboard RightAlt',
      0x000700E7: 'Keyboard Right GUI',
      // LED
      0x00080001: 'Num Lock',
      0x00080002: 'Caps Lock',
      0x00080003: 'Scroll Lock',
      0x00080004: 'Compose',
      0x00080005: 'Kana',
      0x00080006: 'Power',
      0x00080007: 'Shift',
      0x00080008: 'Do Not Disturb',
      0x00080009: 'Mute',
      0x0008000A: 'Tone Enable',
      0x0008000B: 'High Cut Filter',
      0x0008000C: 'Low Cut Filter',
      0x0008000D: 'Equalizer Enable',
      0x0008000E: 'Sound Field On',
      0x0008000F: 'Surround On',
      0x00080010: 'Repeat',
      0x00080011: 'Stereo',
      0x00080012: 'Sampling Rate Detect',
      0x00080013: 'Spinning',
      0x00080014: 'CAV',
      0x00080015: 'CLV',
      0x00080016: 'Recording Format Detect',
      0x00080017: 'Off-Hook',
      0x00080018: 'Ring',
      0x00080019: 'Message Waiting',
      0x0008001A: 'Data Mode',
      0x0008001B: 'Battery Operation',
      0x0008001C: 'Battery OK',
      0x0008001D: 'Battery Low',
      0x0008001E: 'Speaker',
      0x0008001F: 'Head Set',
      0x00080020: 'Hold',
      0x00080021: 'Microphone',
      0x00080022: 'Coverage',
      0x00080023: 'Night Mode',
      0x00080024: 'Send Calls',
      0x00080025: 'Call Pickup',
      0x00080026: 'Conference',
      0x00080027: 'Stand-by',
      0x00080028: 'Camera On',
      0x00080029: 'Camera Off',
      0x0008002A: 'On-Line',
      0x0008002B: 'Off-Line',
      0x0008002C: 'Busy',
      0x0008002D: 'Ready',
      0x0008002E: 'Paper-Out',
      0x0008002F: 'Paper-Jam',
      0x00080030: 'Remote',
      0x00080031: 'Forward',
      0x00080032: 'Reverse',
      0x00080033: 'Stop',
      0x00080034: 'Rewind',
      0x00080035: 'Fast Forward',
      0x00080036: 'Play',
      0x00080037: 'Pause',
      0x00080038: 'Record',
      0x00080039: 'Error',
      0x0008003A: 'Usage Selected Indicator',
      0x0008003B: 'Usage In Use Indicator',
      0x0008003C: 'Usage Multi Mode Indicator',
      0x0008003D: 'Indicator On',
      0x0008003E: 'Indicator Flash',
      0x0008003F: 'Indicator Slow Blink',
      0x00080040: 'Indicator Fast Blink',
      0x00080041: 'Indicator Off',
      0x00080042: 'Flash On Time',
      0x00080043: 'Slow Blink On Time',
      0x00080044: 'Slow Blink Off Time',
      0x00080045: 'Fast Blink On Time',
      0x00080046: 'Fast Blink Off Time',
      0x00080047: 'Usage Indicator Color',
      0x00080048: 'Indicator Red',
      0x00080049: 'Indicator Green',
      0x0008004A: 'Indicator Amber',
      0x0008004B: 'Generic Indicator',
      0x0008004C: 'System Suspend',
      0x0008004D: 'External Power Connected',
      0x0008004E: 'Indicator Blue',
      0x0008004F: 'Indicator Orange',
      0x00080050: 'Good Status',
      0x00080051: 'Warning Status',
      0x00080052: 'RGB LED',
      0x00080053: 'Red LED Channel',
      0x00080054: 'Blue LED Channel',
      0x00080055: 'Green LED Channel',
      0x00080056: 'LED Intensity',
      0x00080060: 'Player Indicator',
      0x00080061: 'Player 1',
      0x00080062: 'Player 2',
      0x00080063: 'Player 3',
      0x00080064: 'Player 4',
      0x00080065: 'Player 5',
      0x00080066: 'Player 6',
      0x00080067: 'Player 7',
      0x00080068: 'Player 8',
      // Telephony Device
      0x000B0001: 'Phone',
      0x000B0002: 'Answering Machine',
      0x000B0003: 'Message Controls',
      0x000B0004: 'Handset',
      0x000B0005: 'Headset',
      0x000B0006: 'Telephony Key Pad',
      0x000B0007: 'Programmable Button',
      0x000B0020: 'Hook Switch',
      0x000B0021: 'Flash',
      0x000B0022: 'Feature',
      0x000B0023: 'Hold',
      0x000B0024: 'Redial',
      0x000B0025: 'Transfer',
      0x000B0026: 'Drop',
      0x000B0027: 'Park',
      0x000B0028: 'Forward Calls',
      0x000B0029: 'Alternate Function',
      0x000B002A: 'Line',
      0x000B002B: 'Speaker Phone',
      0x000B002C: 'Conference',
      0x000B002D: 'Ring Enable',
      0x000B002E: 'Ring Select',
      0x000B002F: 'Phone Mute',
      0x000B0030: 'Caller ID',
      0x000B0031: 'Send',
      0x000B0050: 'Speed Dial',
      0x000B0051: 'Store Number',
      0x000B0052: 'Recall Number',
      0x000B0053: 'Phone Directory',
      0x000B0070: 'Voice Mail',
      0x000B0071: 'Screen Calls',
      0x000B0072: 'Do Not Disturb',
      0x000B0073: 'Message',
      0x000B0074: 'Answer On/Off',
      0x000B0090: 'Inside Dial Tone',
      0x000B0091: 'Outside Dial Tone',
      0x000B0092: 'Inside Ring Tone',
      0x000B0093: 'Outside Ring Tone',
      0x000B0094: 'Priority Ring Tone',
      0x000B0095: 'Inside Ringback',
      0x000B0096: 'Priority Ringback',
      0x000B0097: 'Line Busy Tone',
      0x000B0098: 'Reorder Tone',
      0x000B0099: 'Call Waiting Tone',
      0x000B009A: 'Confirmation Tone 1',
      0x000B009B: 'Confirmation Tone 2',
      0x000B009C: 'Tones Off',
      0x000B009D: 'Outside Ringback',
      0x000B009E: 'Ringer',
      0x000B00B0: 'Phone Key 0',
      0x000B00B1: 'Phone Key 1',
      0x000B00B2: 'Phone Key 2',
      0x000B00B3: 'Phone Key 3',
      0x000B00B4: 'Phone Key 4',
      0x000B00B5: 'Phone Key 5',
      0x000B00B6: 'Phone Key 6',
      0x000B00B7: 'Phone Key 7',
      0x000B00B8: 'Phone Key 8',
      0x000B00B9: 'Phone Key 9',
      0x000B00BA: 'Phone Key Star',
      0x000B00BB: 'Phone Key Pound',
      0x000B00BC: 'Phone Key A',
      0x000B00BD: 'Phone Key B',
      0x000B00BE: 'Phone Key C',
      0x000B00BF: 'Phone Key D',
      0x000B00C0: 'Phone Call History Key',
      0x000B00C1: 'Phone Caller ID Key',
      0x000B00C2: 'Phone Settings Key',
      0x000B00F0: 'Host Control',
      0x000B00F1: 'Host Available',
      0x000B00F2: 'Host Call Active',
      0x000B00F3: 'Activate Handset Audio',
      0x000B00F4: 'Ring Type',
      0x000B00F5: 'Re-dialable Phone Number',
      0x000B00F8: 'Stop Ring Tone',
      0x000B00F9: 'PSTN Ring Tone',
      0x000B00FA: 'Host Ring Tone',
      0x000B00FB: 'Alert Sound Error',
      0x000B00FC: 'Alert Sound Confirm',
      0x000B00FD: 'Alert Sound Notification',
      0x000B00FE: 'Silent Ring',
      0x000B0108: 'Email Message Waiting',
      0x000B0109: 'Voicemail Message Waiting',
      0x000B010A: 'Host Hold',
      0x000B0110: 'Incoming Call History Count',
      0x000B0111: 'Outgoing Call History Count',
      0x000B0112: 'Incoming Call History',
      0x000B0113: 'Outgoing Call History',
      0x000B0114: 'Phone Locale',
      0x000B0140: 'Phone Time Second',
      0x000B0141: 'Phone Time Minute',
      0x000B0142: 'Phone Time Hour',
      0x000B0143: 'Phone Date Day',
      0x000B0144: 'Phone Date Month',
      0x000B0145: 'Phone Date Year',
      0x000B0146: 'Handset Nickname',
      0x000B0147: 'Address Book ID',
      0x000B014A: 'Call Duration',
      0x000B014B: 'Dual Mode Phone',
      // Consumer
      0x000C0001: 'Consumer Control',
      0x000C0002: 'Numeric Key Pad',
      0x000C0003: 'Programmable Buttons',
      0x000C0004: 'Microphone',
      0x000C0005: 'Headphone',
      0x000C0006: 'Graphic Equalizer',
      0x000C0020: '+10',
      0x000C0021: '+100',
      0x000C0022: 'AM/PM',
      0x000C0030: 'Power',
      0x000C0031: 'Reset',
      0x000C0032: 'Sleep',
      0x000C0033: 'Sleep After',
      0x000C0034: 'Sleep Mode',
      0x000C0035: 'Illumination',
      0x000C0036: 'Function Buttons',
      0x000C0040: 'Menu',
      0x000C0041: 'Menu Pick',
      0x000C0042: 'Menu Up',
      0x000C0043: 'Menu Down',
      0x000C0044: 'Menu Left',
      0x000C0045: 'Menu Right',
      0x000C0046: 'Menu Escape',
      0x000C0047: 'Menu Value Increase',
      0x000C0048: 'Menu Value Decrease',
      0x000C0060: 'Data On Screen',
      0x000C0061: 'Closed Caption',
      0x000C0062: 'Closed Caption Select',
      0x000C0063: 'VCR/TV',
      0x000C0064: 'Broadcast Mode',
      0x000C0065: 'Snapshot',
      0x000C0066: 'Still',
      0x000C0067: 'Picture-in-Picture Toggle',
      0x000C0068: 'Picture-in-Picture Swap',
      0x000C0069: 'Red Menu Button',
      0x000C006A: 'Green Menu Button',
      0x000C006B: 'Blue Menu Button',
      0x000C006C: 'Yellow Menu Button',
      0x000C006D: 'Aspect',
      0x000C006E: '3D Mode Select',
      0x000C006F: 'Display Brightness Increment',
      0x000C0070: 'Display Brightness Decrement',
      0x000C0071: 'Display Brightness',
      0x000C0072: 'Display Backlight Toggle',
      0x000C0073: 'Display Set Brightness to Minimum',
      0x000C0074: 'Display Set Brightness to Maximum',
      0x000C0075: 'Display Set Auto Brightness',
      0x000C0076: 'Camera Access Enabled',
      0x000C0077: 'Camera Access Disabled',
      0x000C0078: 'Camera Access Toggle',
      0x000C0079: 'Keyboard Brightness Increment',
      0x000C007A: 'Keyboard Brightness Decrement',
      0x000C007B: 'Keyboard Backlight Set Level',
      0x000C007C: 'Keyboard Backlight OOC',
      0x000C007D: 'Keyboard Backlight Set Minimum',
      0x000C007E: 'Keyboard Backligth Set Maximum',
      0x000C007F: 'Keyboard Backlight Auto',
      0x000C0080: 'Selection',
      0x000C0081: 'Assign Selection',
      0x000C0082: 'Mode Step',
      0x000C0083: 'Recall Last',
      0x000C0084: 'Enter Channel',
      0x000C0085: 'Order Movie',
      0x000C0086: 'Channel',
      0x000C0087: 'Media Selection',
      0x000C0088: 'Media Select Computer',
      0x000C0089: 'Media Select TV',
      0x000C008A: 'Media Select WWW',
      0x000C008B: 'Media Select DVD',
      0x000C008C: 'Media Select Telephone',
      0x000C008D: 'Media Select Program Guide',
      0x000C008E: 'Media Select Video Phone',
      0x000C008F: 'Media Select Games',
      0x000C0090: 'Media Select Messages',
      0x000C0091: 'Media Select CD',
      0x000C0092: 'Media Select VCR',
      0x000C0093: 'Media Select Tuner',
      0x000C0094: 'Quit',
      0x000C0095: 'Help',
      0x000C0096: 'Media Select Tape',
      0x000C0097: 'Media Select Cable',
      0x000C0098: 'Media Select Satellite',
      0x000C0099: 'Media Select Security',
      0x000C009A: 'Media Select Home',
      0x000C009B: 'Media Select Call',
      0x000C009C: 'Channel Increment',
      0x000C009D: 'Channel Decrement',
      0x000C009E: 'Media Select SAP',
      0x000C00A0: 'VCR Plus',
      0x000C00A1: 'Once',
      0x000C00A2: 'Daily',
      0x000C00A3: 'Weekly',
      0x000C00A4: 'Monthly',
      0x000C00B0: 'Play',
      0x000C00B1: 'Pause',
      0x000C00B2: 'Record',
      0x000C00B3: 'Fast Forward',
      0x000C00B4: 'Rewind',
      0x000C00B5: 'Scan Next Track',
      0x000C00B6: 'Scan Previous Track',
      0x000C00B7: 'Stop',
      0x000C00B8: 'Eject',
      0x000C00B9: 'Random Play',
      0x000C00BA: 'Select Disc',
      0x000C00BB: 'Enter Disc',
      0x000C00BC: 'Repeat',
      0x000C00BD: 'Tracking',
      0x000C00BE: 'Track Normal',
      0x000C00BF: 'Slow Tracking',
      0x000C00C0: 'Frame Forward',
      0x000C00C1: 'Frame Back',
      0x000C00C2: 'Mark',
      0x000C00C3: 'Clear Mark',
      0x000C00C4: 'Repeat From Mark',
      0x000C00C5: 'Repeat To Mark',
      0x000C00C6: 'Search Mark Forward',
      0x000C00C7: 'Search Mark Backward',
      0x000C00C8: 'Counter Reset',
      0x000C00C9: 'Show Counter',
      0x000C00CA: 'Tracking Increment',
      0x000C00CB: 'Tracking Decrement',
      0x000C00CC: 'Stop/Eject',
      0x000C00CD: 'Play/Pause',
      0x000C00CE: 'Play/Skip',
      0x000C00CF: 'Voice Command',
      0x000C00D0: 'Invoke Capture Interface',
      0x000C00D1: 'Start or Stop Game Recording',
      0x000C00D2: 'Historical Game Capture',
      0x000C00D3: 'Capture Game Screenshot',
      0x000C00D4: 'Show or Hide Recording Indicator',
      0x000C00D5: 'Start or Stop Microphone Capture',
      0x000C00D6: 'Start or Stop Camera Capture',
      0x000C00D7: 'Start or Stop Game Broadcast',
      0x000C00D8: 'Start or Stop Voice Dictation Session',
      0x000C00D9: 'Invoke/Dismiss Emoji Picker',
      0x000C00E0: 'Volume',
      0x000C00E1: 'Balance',
      0x000C00E2: 'Mute',
      0x000C00E3: 'Bass',
      0x000C00E4: 'Treble',
      0x000C00E5: 'Bass Boost',
      0x000C00E6: 'Surround Mode',
      0x000C00E7: 'Loudness',
      0x000C00E8: 'MPX',
      0x000C00E9: 'Volume Increment',
      0x000C00EA: 'Volume Decrement',
      0x000C00F0: 'Speed Select',
      0x000C00F1: 'Playback Speed',
      0x000C00F2: 'Standard Play',
      0x000C00F3: 'Long Play',
      0x000C00F4: 'Extended Play',
      0x000C00F5: 'Slow',
      0x000C0100: 'Fan Enable',
      0x000C0101: 'Fan Speed',
      0x000C0102: 'Light Enable',
      0x000C0103: 'Light Illumination Level',
      0x000C0104: 'Climate Control Enable',
      0x000C0105: 'Room Temperature',
      0x000C0106: 'Security Enable',
      0x000C0107: 'Fire Alarm',
      0x000C0108: 'Police Alarm',
      0x000C0109: 'Proximity',
      0x000C010A: 'Motion',
      0x000C010B: 'Duress Alarm',
      0x000C010C: 'Holdup Alarm',
      0x000C010D: 'Medical Alarm',
      0x000C0150: 'Balance Right',
      0x000C0151: 'Balance Left',
      0x000C0152: 'Bass Increment',
      0x000C0153: 'Bass Decrement',
      0x000C0154: 'Treble Increment',
      0x000C0155: 'Treble Decrement',
      0x000C0160: 'Speaker System',
      0x000C0161: 'Channel Left',
      0x000C0162: 'Channel Right',
      0x000C0163: 'Channel Center',
      0x000C0164: 'Channel Front',
      0x000C0165: 'Channel Center Front',
      0x000C0166: 'Channel Side',
      0x000C0167: 'Channel Surround',
      0x000C0168: 'Channel Low Frequency Enhancement',
      0x000C0169: 'Channel Top',
      0x000C016A: 'Channel Unknown',
      0x000C0170: 'Sub-channel',
      0x000C0171: 'Sub-channel Increment',
      0x000C0172: 'Sub-channel Decrement',
      0x000C0173: 'Alternate Audio Increment',
      0x000C0174: 'Alternate Audio Decrement',
      0x000C0180: 'Application Launch Buttons',
      0x000C0181: 'AL Launch Button Configuration Tool',
      0x000C0182: 'AL Programmable Button Configuration',
      0x000C0183: 'AL Consumer Control Configuration',
      0x000C0184: 'AL Word Processor',
      0x000C0185: 'AL Text Editor',
      0x000C0186: 'AL Spreadsheet',
      0x000C0187: 'AL Graphics Editor',
      0x000C0188: 'AL Presentation App',
      0x000C0189: 'AL Database App',
      0x000C018A: 'AL Email Reader',
      0x000C018B: 'AL Newsreader',
      0x000C018C: 'AL Voicemail',
      0x000C018D: 'AL Contacts/Address Book',
      0x000C018E: 'AL Calendar/Schedule',
      0x000C018F: 'AL Task/Project Manager',
      0x000C0190: 'AL Log/Journal/Timecard',
      0x000C0191: 'AL Checkbook/Finance',
      0x000C0192: 'AL Calculator',
      0x000C0193: 'AL A/V Capture/Playback',
      0x000C0194: 'AL Local Machine Browser',
      0x000C0195: 'AL LAN/WAN Browser',
      0x000C0196: 'AL Internet Browser',
      0x000C0197: 'AL Remote Networking/ISP Connect',
      0x000C0198: 'AL Network Conference',
      0x000C0199: 'AL Network Chat',
      0x000C019A: 'AL Telephony/Dialer',
      0x000C019B: 'AL Logon',
      0x000C019C: 'AL Logoff',
      0x000C019D: 'AL Logon/Logoff',
      0x000C019E: 'AL Terminal Lock/Screensaver',
      0x000C019F: 'AL Control Panel',
      0x000C01A0: 'AL Command Line Processor/Run',
      0x000C01A1: 'AL Process/Task Manager',
      0x000C01A2: 'AL Select Task/Application',
      0x000C01A3: 'AL Next Task/Application',
      0x000C01A4: 'AL Previous Task/Application',
      0x000C01A5: 'AL Preemptive Halt Task/Application',
      0x000C01A6: 'AL Integrated Help Center',
      0x000C01A7: 'AL Documents',
      0x000C01A8: 'AL Thesaurus',
      0x000C01A9: 'AL Dictionary',
      0x000C01AA: 'AL Desktop',
      0x000C01AB: 'AL Spell Check',
      0x000C01AC: 'AL Grammar Check',
      0x000C01AD: 'AL Wireless Status',
      0x000C01AE: 'AL Keyboard Layout',
      0x000C01AF: 'AL Virus Protection',
      0x000C01B0: 'AL Encryption',
      0x000C01B1: 'AL Screen Saver',
      0x000C01B2: 'AL Alarms',
      0x000C01B3: 'AL Clock',
      0x000C01B4: 'AL File Browser',
      0x000C01B5: 'AL Power Status',
      0x000C01B6: 'AL Image Browser',
      0x000C01B7: 'AL Audio Browser',
      0x000C01B8: 'AL Movie Browser',
      0x000C01B9: 'AL Digital Rights Manager',
      0x000C01BA: 'AL Digital Wallet',
      0x000C01BC: 'AL Instant Messaging',
      0x000C01BD: 'AL OEM Features/Tips/Tutorial Browser',
      0x000C01BE: 'AL OEM Help',
      0x000C01BF: 'AL Online Community',
      0x000C01C0: 'AL Entertainment Content Browser',
      0x000C01C1: 'AL Online Shopping Browser',
      0x000C01C2: 'AL SmartCard Information/Help',
      0x000C01C3: 'AL Market Monitor/Finance Browser',
      0x000C01C4: 'AL Customized Corporate News Browser',
      0x000C01C5: 'AL Online Activity Browser',
      0x000C01C6: 'AL Research/Search Browser',
      0x000C01C7: 'AL Audio Player',
      0x000C01C8: 'AL Message Status',
      0x000C01C9: 'AL Contact Sync',
      0x000C01CA: 'AL Navigation',
      0x000C01CB: 'AL Context-aware Desktop Assistant',
      0x000C0200: 'Generic GUI Application Controls',
      0x000C0201: 'AC New',
      0x000C0202: 'AC Open',
      0x000C0203: 'AC Close',
      0x000C0204: 'AC Exit',
      0x000C0205: 'AC Maximize',
      0x000C0206: 'AC Minimize',
      0x000C0207: 'AC Save',
      0x000C0208: 'AC Print',
      0x000C0209: 'AC Properties',
      0x000C021A: 'AC Undo',
      0x000C021B: 'AC Copy',
      0x000C021C: 'AC Cut',
      0x000C021D: 'AC Paste',
      0x000C021E: 'AC Select All',
      0x000C021F: 'AC Find',
      0x000C0220: 'AC Find and Replace',
      0x000C0221: 'AC Search',
      0x000C0222: 'AC Go To',
      0x000C0223: 'AC Home',
      0x000C0224: 'AC Back',
      0x000C0225: 'AC Forward',
      0x000C0226: 'AC Stop',
      0x000C0227: 'AC Refresh',
      0x000C0228: 'AC Previous Link',
      0x000C0229: 'AC Next Link',
      0x000C022A: 'AC Bookmarks',
      0x000C022B: 'AC History',
      0x000C022C: 'AC Subscriptions',
      0x000C022D: 'AC Zoom In',
      0x000C022E: 'AC Zoom Out',
      0x000C022F: 'AC Zoom',
      0x000C0230: 'AC Full Screen View',
      0x000C0231: 'AC Normal View',
      0x000C0232: 'AC View Toggle',
      0x000C0233: 'AC Scroll Up',
      0x000C0234: 'AC Scroll Down',
      0x000C0235: 'AC Scroll',
      0x000C0236: 'AC Pan Left',
      0x000C0237: 'AC Pan Right',
      0x000C0238: 'AC Pan',
      0x000C0239: 'AC New Window',
      0x000C023A: 'AC Tile Horizontally',
      0x000C023B: 'AC Tile Vertically',
      0x000C023C: 'AC Format',
      0x000C023D: 'AC Edit',
      0x000C023E: 'AC Bold',
      0x000C023F: 'AC Italics',
      0x000C0240: 'AC Underline',
      0x000C0241: 'AC Strikethrough',
      0x000C0242: 'AC Subscript',
      0x000C0243: 'AC Superscript',
      0x000C0244: 'AC All Caps',
      0x000C0245: 'AC Rotate',
      0x000C0246: 'AC Resize',
      0x000C0247: 'AC Flip Horizontal',
      0x000C0248: 'AC Flip Vertical',
      0x000C0249: 'AC Mirror Horizontal',
      0x000C024A: 'AC Mirror Vertical',
      0x000C024B: 'AC Font Select',
      0x000C024C: 'AC Font Color',
      0x000C024D: 'AC Font Size',
      0x000C024E: 'AC Justify Left',
      0x000C024F: 'AC Justify Center H',
      0x000C0250: 'AC Justify Right',
      0x000C0251: 'AC Justify Block H',
      0x000C0252: 'AC Justify Top',
      0x000C0253: 'AC Justify Center V',
      0x000C0254: 'AC Justify Bottom',
      0x000C0255: 'AC Justify Block V',
      0x000C0256: 'AC Indent Decrease',
      0x000C0257: 'AC Indent Increase',
      0x000C0258: 'AC Numbered List',
      0x000C0259: 'AC Restart Numbering',
      0x000C025A: 'AC Bulleted List',
      0x000C025B: 'AC Promote',
      0x000C025C: 'AC Demote',
      0x000C025D: 'AC Yes',
      0x000C025E: 'AC No',
      0x000C025F: 'AC Cancel',
      0x000C0260: 'AC Catalog',
      0x000C0261: 'AC Buy/Checkout',
      0x000C0262: 'AC Add to Cart',
      0x000C0263: 'AC Expand',
      0x000C0264: 'AC Expand All',
      0x000C0265: 'AC Collapse',
      0x000C0266: 'AC Collapse All',
      0x000C0267: 'AC Print Preview',
      0x000C0268: 'AC Paste Special',
      0x000C0269: 'AC Insert Mode',
      0x000C026A: 'AC Delete',
      0x000C026B: 'AC Lock',
      0x000C026C: 'AC Unlock',
      0x000C026D: 'AC Protect',
      0x000C026E: 'AC Unprotect',
      0x000C026F: 'AC Attach Comment',
      0x000C0270: 'AC Delete Comment',
      0x000C0271: 'AC View Comment',
      0x000C0272: 'AC Select Word',
      0x000C0273: 'AC Select Sentence',
      0x000C0274: 'AC Select Paragraph',
      0x000C0275: 'AC Select Column',
      0x000C0276: 'AC Select Row',
      0x000C0277: 'AC Select Table',
      0x000C0278: 'AC Select Object',
      0x000C0279: 'AC Redo/Repeat',
      0x000C027A: 'AC Sort',
      0x000C027B: 'AC Sort Ascending',
      0x000C027C: 'AC Sort Descending',
      0x000C027D: 'AC Filter',
      0x000C027E: 'AC Set Clock',
      0x000C027F: 'AC View Clock',
      0x000C0280: 'AC Select Time Zone',
      0x000C0281: 'AC Edit Time Zones',
      0x000C0282: 'AC Set Alarm',
      0x000C0283: 'AC Clear Alarm',
      0x000C0284: 'AC Snooze Alarm',
      0x000C0285: 'AC Reset Alarm',
      0x000C0286: 'AC Synchronize',
      0x000C0287: 'AC Send/Receive',
      0x000C0288: 'AC Send To',
      0x000C0289: 'AC Reply',
      0x000C028A: 'AC Reply All',
      0x000C028B: 'AC Forward Msg',
      0x000C028C: 'AC Send',
      0x000C028D: 'AC Attach File',
      0x000C028E: 'AC Upload',
      0x000C028F: 'AC Download (Save Target As)',
      0x000C0290: 'AC Set Borders',
      0x000C0291: 'AC Insert Row',
      0x000C0292: 'AC Insert Column',
      0x000C0293: 'AC Insert File',
      0x000C0294: 'AC Insert Picture',
      0x000C0295: 'AC Insert Object',
      0x000C0296: 'AC Insert Symbol',
      0x000C0297: 'AC Save and Close',
      0x000C0298: 'AC Rename',
      0x000C0299: 'AC Merge',
      0x000C029A: 'AC Split',
      0x000C029B: 'AC Distribute Horizontally',
      0x000C029C: 'AC Distribute Vertically',
      0x000C029D: 'AC Next Keyboard Layout Select',
      0x000C029E: 'AC Navigation Guidance',
      0x000C029F: 'AC Desktop Show All Windows',
      0x000C02A0: 'AC Soft Key Left',
      0x000C02A1: 'AC Soft Key Right',
      0x000C02A2: 'AC Desktop Show All Applications',
      0x000C02B0: 'AC Idle Keep Alive',
      0x000C02C0: 'Extended Keyboard Attributes Collection',
      0x000C02C1: 'Keyboard Form Factor',
      0x000C02C2: 'Keyboard Key Type',
      0x000C02C3: 'Keyboard Physical Layout',
      0x000C02C4: 'Vendor-Specific Keyboard Physical Layout',
      0x000C02C5: 'Keyboard IETF Language Tag Index',
      0x000C02C6: 'Implemented Keyboard Input Assist Controls',
      0x000C02C7: 'Keyboard Input Assist Previous',
      0x000C02C8: 'Keyboard Input Assist Next',
      0x000C02C9: 'Keyboard Input Assist Previous Group',
      0x000C02CA: 'Keyboard Input Assist Next Group',
      0x000C02CB: 'Keyboard Input Assist Accept',
      0x000C02CC: 'Keyboard Input Assist Cancel',
      0x000C02D0: 'Primary Screen Toggle',
      0x000C02D1: 'Primary Screen Level Decrement',
      0x000C02D2: 'Primary Screen Level Increment',
      0x000C02D3: 'Primary Screen Level Minimum',
      0x000C02D4: 'Primary Screen Level Maximum',
      0x000C0500: 'Contact Edited',
      0x000C0501: 'Contact Added',
      0x000C0502: 'Contact Record Active',
      0x000C0503: 'Contact Index',
      0x000C0504: 'Contact Nickname',
      0x000C0505: 'Contact First Name',
      0x000C0506: 'Contact Last Name',
      0x000C0507: 'Contact Full Name',
      0x000C0508: 'Contact Phone Number Personal',
      0x000C0509: 'Contact Phone Number Business',
      0x000C050A: 'Contact Phone Number Mobile',
      0x000C050B: 'Contact Phone Number Pager',
      0x000C050C: 'Contact Phone Number Fax',
      0x000C050D: 'Contact Phone Number Other',
      0x000C050E: 'Contact Email Personal',
      0x000C050F: 'Contact Email Business',
      0x000C0510: 'Contact Email Other',
      0x000C0511: 'Contact Email Main',
      0x000C0512: 'Contact Speed Dial Number',
      0x000C0513: 'Contact Status Flag',
      0x000C0514: 'Contact Misc.',
      // Digitizers
      0x000D0001: 'Digitizer',
      0x000D0002: 'Pen',
      0x000D0003: 'Light Pen',
      0x000D0004: 'Touch Screen',
      0x000D0005: 'Touch Pad',
      0x000D0006: 'Whiteboard',
      0x000D0007: 'Coordinate Measuring Machine',
      0x000D0008: '3D Digitizer',
      0x000D0009: 'Stereo Plotter',
      0x000D000A: 'Articulated Arm',
      0x000D000B: 'Armature',
      0x000D000C: 'Multiple Point Digitizer',
      0x000D000D: 'Free Space Wand',
      0x000D000E: 'Device Configuration',
      0x000D000F: 'Capacitive Heat Map Digitizer',
      0x000D0020: 'Stylus',
      0x000D0021: 'Puck',
      0x000D0022: 'Finger',
      0x000D0023: 'Device settings',
      0x000D0024: 'Character Gesture',
      0x000D0030: 'Tip Pressure',
      0x000D0031: 'Barrel Pressure',
      0x000D0032: 'In Range',
      0x000D0033: 'Touch',
      0x000D0034: 'Untouch',
      0x000D0035: 'Tap',
      0x000D0036: 'Quality',
      0x000D0037: 'Data Valid',
      0x000D0038: 'Transducer Index',
      0x000D0039: 'Tablet Function Keys',
      0x000D003A: 'Program Change Keys',
      0x000D003B: 'Battery Strength',
      0x000D003C: 'Invert',
      0x000D003D: 'X Tilt',
      0x000D003E: 'Y Tilt',
      0x000D003F: 'Azimuth',
      0x000D0040: 'Altitude',
      0x000D0041: 'Twist',
      0x000D0042: 'Tip Switch',
      0x000D0043: 'Secondary Tip Switch',
      0x000D0044: 'Barrel Switch',
      0x000D0045: 'Eraser',
      0x000D0046: 'Tablet Pick',
      0x000D0047: 'Touch Valid',
      0x000D0048: 'Width',
      0x000D0049: 'Height',
      0x000D0051: 'Contact Identifier',
      0x000D0052: 'Device Mode',
      0x000D0053: 'Device Identifier',
      0x000D0054: 'Contact Count',
      0x000D0055: 'Contact Count Maximum',
      0x000D0056: 'Scan Time',
      0x000D0057: 'Surface Switch',
      0x000D0058: 'Button Switch',
      0x000D0059: 'Pad Type',
      0x000D005A: 'Secondary Barrel Switch',
      0x000D005B: 'Transducer Serial Number',
      0x000D005C: 'Preferred Color',
      0x000D005D: 'Preferred Color is Locked',
      0x000D005E: 'Preferred Line Width',
      0x000D005F: 'Preferred Line Width is Locked',
      0x000D0060: 'Latency Mode',
      0x000D0061: 'Gesture Character Quality',
      0x000D0062: 'Character Gesture Data Length',
      0x000D0063: 'Character Gesture Data',
      0x000D0064: 'Gesture Character Encoding',
      0x000D0065: 'UTF8 Character Gesture Encoding',
      0x000D0066: 'UTF16 Little Endian Character Gesture Encoding',
      0x000D0067: 'UTF16 Big Endian Character Gesture Encoding',
      0x000D0068: 'UTF32 Little Endian Character Gesture Encoding',
      0x000D0069: 'UTF32 Big Endian Character Gesture Encoding',
      0x000D006A: 'Capacitive Heat Map Protocol Vendor ID',
      0x000D006B: 'Capacitive Heat Map Protocol Version',
      0x000D006C: 'Capacitive Heat Map Frame Data',
      0x000D006D: 'Gesture Character Enable',
      0x000D0070: 'Preferred Line Style',
      0x000D0071: 'Preferred LIne Style is Locked',
      0x000D0072: 'Ink',
      0x000D0073: 'Pencil',
      0x000D0074: 'Highlighter',
      0x000D0075: 'Chisel Marker',
      0x000D0076: 'Brush',
      0x000D0077: 'No Preference',
      0x000D0080: 'Digitizer Diagnostic',
      0x000D0081: 'Digitizer Error',
      0x000D0082: 'Err Normal Status',
      0x000D0083: 'Err Transducers Exceeded',
      0x000D0084: 'Err Full Trans Features Unavailable',
      0x000D0085: 'Err Charge Low',
      0x000D0090: 'Transducer Software Info',
      0x000D0091: 'Transducer Vendor Id',
      0x000D0092: 'Transducer Product Id',
      0x000D0093: 'Device Supported Protocols',
      0x000D0094: 'Transducer Supported Protocols',
      0x000D0095: 'No Protocol',
      0x000D0096: 'Wacom AES Protocol',
      0x000D0097: 'USI Protocol',
      0x000D0098: 'Microsoft Pen Protocol',
      0x000D00A0: 'Supported Report Rates',
      0x000D00A1: 'Report Rate',
      0x000D00A2: 'Transducer Connected',
      0x000D00A3: 'Switch Disabled',
      0x000D00A4: 'Switch Unimplemented',
      0x000D00A5: 'Transducer Switches',
      // Haptics
      0x000E0001: 'Simple Haptic Controller',
      0x000E0010: 'Waveform List',
      0x000E0011: 'Duration List',
      0x000E0020: 'Auto Trigger',
      0x000E0021: 'Manual Trigger',
      0x000E0022: 'Auto Trigger Associated Control',
      0x000E0023: 'Intensity',
      0x000E0024: 'Repeat Count',
      0x000E0025: 'Retrigger Period',
      0x000E0026: 'Waveform Vendor Page',
      0x000E0027: 'Waveform Vendor ID',
      0x000E0028: 'Waveform Cutoff Time',
      0x000E1001: 'Waveform None',
      0x000E1002: 'Waveform Stop',
      0x000E1003: 'Waveform Click',
      0x000E1004: 'Waveform Buzz Continuous',
      0x000E1005: 'Waveform Rumble Continuous',
      0x000E1006: 'Waveform Press',
      0x000E1007: 'Waveform Release',
      // Physical Input Device
      0x000F0001: 'Physical Interface Device',
      0x000F0020: 'Normal',
      0x000F0021: 'Set Effect Report',
      0x000F0022: 'Effect Block Index',
      0x000F0023: 'Parameter Block Offset',
      0x000F0024: 'ROM Flag',
      0x000F0025: 'Effect Type',
      0x000F0026: 'ET Constant Force',
      0x000F0027: 'ET Ramp',
      0x000F0028: 'ET Custom Force Data',
      0x000F0030: 'ET Square',
      0x000F0031: 'ET Sine',
      0x000F0032: 'ET Triangle',
      0x000F0033: 'ET Sawtooth Up',
      0x000F0034: 'ET Sawtooth Down',
      0x000F0040: 'ET Spring',
      0x000F0041: 'ET Damper',
      0x000F0042: 'ET Inertia',
      0x000F0043: 'ET Friction',
      0x000F0050: 'Duration',
      0x000F0051: 'Sample Period',
      0x000F0052: 'Gain',
      0x000F0053: 'Trigger Button',
      0x000F0054: 'Trigger Repeat Interval',
      0x000F0055: 'Axes Enable',
      0x000F0056: 'Direction Enable',
      0x000F0057: 'Direction',
      0x000F0058: 'Type Specific Block Offset',
      0x000F0059: 'Block Type',
      0x000F005A: 'Set Envelope Report',
      0x000F005B: 'Attack Level',
      0x000F005C: 'Attack Time',
      0x000F005D: 'Fade Level',
      0x000F005E: 'Fade Time',
      0x000F005F: 'Set Condition Report',
      0x000F0060: 'CP Offset',
      0x000F0061: 'Positive Coefficient',
      0x000F0062: 'Negative Coefficient',
      0x000F0063: 'Positive Saturation',
      0x000F0064: 'Negative Saturation',
      0x000F0065: 'Dead Band',
      0x000F0066: 'Download Force Sample',
      0x000F0067: 'Isoch Custom Force Enable',
      0x000F0068: 'Custom Force Data Report',
      0x000F0069: 'Custom Force Data',
      0x000F006A: 'Custom Force Vendor Defined Data',
      0x000F006B: 'Set Custom Force Report',
      0x000F006C: 'Custom Force Data Offset',
      0x000F006D: 'Sample Count',
      0x000F006E: 'Set Periodic Report',
      0x000F006F: 'Offset',
      0x000F0070: 'Magnitude',
      0x000F0071: 'Phase',
      0x000F0072: 'Period',
      0x000F0073: 'Set Constant Force Report',
      0x000F0074: 'Set Ramp Force Report',
      0x000F0075: 'Ramp Start',
      0x000F0076: 'Ramp End',
      0x000F0077: 'Effect Operation Report',
      0x000F0078: 'Effect Operation',
      0x000F0079: 'Op Effect Start',
      0x000F007A: 'Op Effect Start Solo',
      0x000F007B: 'Op Effect Stop',
      0x000F007C: 'Loop Count',
      0x000F007D: 'Device Gain Report',
      0x000F007E: 'Device Gain',
      0x000F007F: 'PID Pool Report',
      0x000F0080: 'RAM Pool Size',
      0x000F0081: 'ROM Pool Size',
      0x000F0082: 'ROM Effect Block Count',
      0x000F0083: 'Simultaneous Effects Max',
      0x000F0084: 'Pool Alignment',
      0x000F0085: 'PID Pool Move Report',
      0x000F0086: 'Move Source',
      0x000F0087: 'Move Destination',
      0x000F0088: 'Move Length',
      0x000F0089: 'PID Block Load Report',
      0x000F008B: 'Block Load Status',
      0x000F008C: 'Block Load Success',
      0x000F008D: 'Block Load Full',
      0x000F008E: 'Block Load Error',
      0x000F008F: 'Block Handle',
      0x000F0090: 'PID Block Free Report',
      0x000F0091: 'Type Specific Block Handle',
      0x000F0092: 'PID State Report',
      0x000F0094: 'Effect Playing',
      0x000F0095: 'PID Device Control Report',
      0x000F0096: 'PID Device Control',
      0x000F0097: 'DC Enable Actuators',
      0x000F0098: 'DC Disable Actuators',
      0x000F0099: 'DC Stop All Effects',
      0x000F009A: 'DC Device Reset',
      0x000F009B: 'DC Device Pause',
      0x000F009C: 'DC Device Continue',
      0x000F009F: 'Device Paused',
      0x000F00A0: 'Actuators Enabled',
      0x000F00A4: 'Safety Switch',
      0x000F00A5: 'Actuator Override Switch',
      0x000F00A6: 'Actuator Power',
      0x000F00A7: 'Start Delay',
      0x000F00A8: 'Parameter Block Size',
      0x000F00A9: 'Device Managed Pool',
      0x000F00AA: 'Shared Parameter Blocks',
      0x000F00AB: 'Create New Effect Report',
      0x000F00AC: 'RAM Pool Available',
      // Eye and Head Trackers
      0x00120001: 'Eye Tracker',
      0x00120002: 'Head Tracker',
      0x00120010: 'Tracking Data',
      0x00120011: 'Capabilities',
      0x00120012: 'Configuration',
      0x00120013: 'Status',
      0x00120014: 'Control',
      0x00120020: 'Sensor Timestamp',
      0x00120021: 'Position X',
      0x00120022: 'Position Y',
      0x00120023: 'Position Z',
      0x00120024: 'Gaze Point',
      0x00120025: 'Left Eye Position',
      0x00120026: 'Right Eye Position',
      0x00120027: 'Head Position',
      0x00120028: 'Head Direction Point',
      0x00120029: 'Rotation about X axis',
      0x0012002A: 'Rotation about Y axis',
      0x0012002B: 'Rotation about Z axis',
      0x00120100: 'Tracker Quality',
      0x00120101: 'Minimum Tracking Distance',
      0x00120102: 'Optimum Tracking Distance',
      0x00120103: 'Maximum Tracking Distance',
      0x00120104: 'Maximum Screen Plane Width',
      0x00120105: 'Maximum Screen Plane Height',
      0x00120200: 'Display Manufacturer ID',
      0x00120201: 'Display Product ID',
      0x00120202: 'Display Serial Number',
      0x00120203: 'Display Manufacturer Date',
      0x00120204: 'Calibrated Screen Width',
      0x00120205: 'Calibrated Screen Height',
      0x00120300: 'Sampling Frequency',
      0x00120301: 'Configuration Status',
      0x00120400: 'Device Mode Request',
      // Auxiliary Display
    //   0x00140001: 'Alphanumeric Display',
      0x00140001: 'Auxiliary Display',
      0x00140020: 'Display Attributes Report',
      0x00140021: 'ASCII Character Set',
      0x00140022: 'Data Read Back',
      0x00140023: 'Font Read Back',
      0x00140024: 'Display Control Report',
      0x00140025: 'Clear Display',
      0x00140026: 'Display Enable',
      0x00140027: 'Screen Saver Display',
      0x00140028: 'Screen Saver Enable',
      0x00140029: 'Vertical Scroll',
      0x0014002A: 'Horizontal Scroll',
      0x0014002B: 'Character Report',
      0x0014002C: 'Display Data',
      0x0014002D: 'Display Status',
      0x0014002E: 'Stat Not Ready',
      0x0014002F: 'Stat Ready',
      0x00140030: 'Err Not a loadable character',
      0x00140031: 'Err Font data cannot be read',
      0x00140032: 'Cursor Position Report',
      0x00140033: 'Row',
      0x00140034: 'Column',
      0x00140035: 'Rows',
      0x00140036: 'Columns',
      0x00140037: 'Cursor Pixel Positioning',
      0x00140038: 'Cursor Mode',
      0x00140039: 'Cursor Enable',
      0x0014003A: 'Cursor Blink',
      0x0014003B: 'Font Report',
      0x0014003C: 'Font Data',
      0x0014003D: 'Character Width',
      0x0014003E: 'Character Height',
      0x0014003F: 'Character Spacing Horizontal',
      0x00140040: 'Character Spacing Vertical',
      0x00140041: 'Unicode Character Set',
      0x00140042: 'Font 7-Segment',
      0x00140043: '7-Segment Direct Map',
      0x00140044: 'Font 14-Segment',
      0x00140045: '14-Segment Direct Map',
      0x00140046: 'Display Brightness',
      0x00140047: 'Display Contrast',
      0x00140048: 'Character Attribute',
      0x00140049: 'Attribute Readback',
      0x0014004A: 'Attribute Data',
      0x0014004B: 'Char Attr Enhance',
      0x0014004C: 'Char Attr Underline',
      0x0014004D: 'Char Attr Blink',
      0x00140080: 'Bitmap Size X',
      0x00140081: 'Bitmap Size Y',
      0x00140082: 'Max Blit Size',
      0x00140083: 'Bit Depth Format',
      0x00140084: 'Display Orientation',
      0x00140085: 'Palette Report',
      0x00140086: 'Palette Data Size',
      0x00140087: 'Palette Data Offset',
      0x00140088: 'Palette Data',
      0x0014008A: 'Blit Report',
      0x0014008B: 'Blit Rectangle X1',
      0x0014008C: 'Blit Rectangle Y1',
      0x0014008D: 'Blit Rectangle X2',
      0x0014008E: 'Blit Rectangle Y2',
      0x0014008F: 'Blit Data',
      0x00140090: 'Soft Button',
      0x00140091: 'Soft Button ID',
      0x00140092: 'Soft Button Side',
      0x00140093: 'Soft Button Offset 1',
      0x00140094: 'Soft Button Offset 2',
      0x00140095: 'Soft Button Report',
      0x001400C2: 'Soft Keys',
      0x001400CC: 'Display Data Extensions',
      0x001400CF: 'Character Mapping',
      0x001400DD: 'Unicode Equivalent',
      0x001400DF: 'Character Page Mapping',
      0x001400FF: 'Request Report',
      // Sensors
      0x00200001: 'Sensor',
      0x00200010: 'Biometric',
      0x00200011: 'Biometric: Human Presence',
      0x00200012: 'Biometric: Human Proximity',
      0x00200013: 'Biometric: Human Touch',
      0x00200014: 'Biometric: Blood Pressure',
      0x00200015: 'Biometric: Body Temperature',
      0x00200016: 'Biometric: Heart Rate',
      0x00200017: 'Biometric: Heart Rate Variability',
      0x00200018: 'Biometric: Peripheral Oxygen Saturation',
      0x00200019: 'Biometric: Respiratory Rate',
      0x00200020: 'Electrical',
      0x00200021: 'Electrical: Capacitance',
      0x00200022: 'Electrical: Current',
      0x00200023: 'Electrical: Power',
      0x00200024: 'Electrical: Inductance',
      0x00200025: 'Electrical: Resistance',
      0x00200026: 'Electrical: Voltage',
      0x00200027: 'Electrical: Potentiometer',
      0x00200028: 'Electrical: Frequency',
      0x00200029: 'Electrical: Period',
      0x00200030: 'Environmental',
      0x00200031: 'Environmental: Atmospheric Pressure',
      0x00200032: 'Environmental: Humidity',
      0x00200033: 'Environmental: Temperature',
      0x00200034: 'Environmental: Wind Direction',
      0x00200035: 'Environmental: Wind Speed',
      0x00200036: 'Environmental: Air Quality',
      0x00200037: 'Environmental: Heat Index',
      0x00200038: 'Environmental: Surface Temperature',
      0x00200039: 'Environmental: Volatile Organic Compounds',
      0x0020003A: 'Environmental: Object Pressure',
      0x0020003B: 'Environmental: Object Proximity',
      0x00200040: 'Light',
      0x00200041: 'Light: Ambient Light',
      0x00200042: 'Light: Consumer Infrared',
      0x00200043: 'Light: Infrared Light',
      0x00200044: 'Light: Visible Light',
      0x00200045: 'Light: Ultraviolet Light',
      0x00200050: 'Location',
      0x00200051: 'Location: Broadcast',
      0x00200052: 'Location: Dead Reckoning',
      0x00200053: 'Location: GPS (Global Positioning System)',
      0x00200054: 'Location: Lookup',
      0x00200055: 'Location: Other',
      0x00200056: 'Location: Static',
      0x00200057: 'Location: Triangulation',
      0x00200060: 'Mechanical',
      0x00200062: 'Mechanical: Boolean Switch',
    //   0x00200063: 'Mechanical: Boolean Switch Array',
      0x00200063: 'Mechanical: Multivalue Switch',
      0x00200064: 'Mechanical: Force',
      0x00200065: 'Mechanical: Pressure',
      0x00200066: 'Mechanical: Strain',
      0x00200067: 'Mechanical: Weight',
      0x00200068: 'Mechanical: Haptic Vibrator',
      0x00200069: 'Mechanical: Hall Effect Switch',
      0x00200070: 'Motion',
      0x00200071: 'Motion: Accelerometer 1D',
      0x00200072: 'Motion: Accelerometer 2D',
      0x00200073: 'Motion: Accelerometer 3D',
      0x00200074: 'Motion: Gyrometer 1D',
      0x00200075: 'Motion: Gyrometer 2D',
      0x00200076: 'Motion: Gyrometer 3D',
      0x00200077: 'Motion: Motion Detector',
      0x00200078: 'Motion: Speedometer',
      0x00200079: 'Motion: Accelerometer',
      0x0020007A: 'Motion: Gyrometer',
      0x0020007B: 'Motion: Gravity Vector',
      0x0020007C: 'Motion: Linear Accelerometer',
      0x00200080: 'Orientation',
      0x00200081: 'Orientation: Compass 1D',
      0x00200082: 'Orientation: Compass 2D',
      0x00200083: 'Orientation: Compass 3D',
      0x00200084: 'Orientation: Inclinometer 1D',
      0x00200085: 'Orientation: Inclinometer 2D',
      0x00200086: 'Orientation: Inclinometer 3D',
      0x00200087: 'Orientation: Distance 1D',
      0x00200088: 'Orientation: Distance 2D',
      0x00200089: 'Orientation: Distance 3D',
      0x0020008A: 'Orientation: Device Orientation',
      0x0020008B: 'Orientation: Compass',
      0x0020008C: 'Orientation: Inclinometer',
      0x0020008D: 'Orientation: Distance',
      0x0020008E: 'Orientation: Relative Orientation',
      0x0020008F: 'Orientation: Simple Orientation',
      0x00200090: 'Scanner',
      0x00200091: 'Scanner: Barcode',
      0x00200092: 'Scanner: RFID',
      0x00200093: 'Scanner: NFC',
      0x002000A0: 'Time',
      0x002000A1: 'Time: Alarm Timer',
      0x002000A2: 'Time: Real Time Clock',
      0x002000B0: 'Personal Activity',
      0x002000B1: 'Personal Activity: Activity Detection',
      0x002000B2: 'Personal Activity: Device Position',
      0x002000B3: 'Personal Activity: Pedometer',
      0x002000B4: 'Personal Activity: Step Detection',
      0x002000C0: 'Orientation Extended',
      0x002000C1: 'Orientation Extended: Geomagnetic Orientation',
      0x002000C2: 'Orientation Extended: Magnetometer',
      0x002000D0: 'Gesture',
      0x002000D1: 'Gesture: Chassis Flip Gesture',
      0x002000D2: 'Gesture: Hinge Fold Gesture',
      0x002000E0: 'Other',
      0x002000E1: 'Other: Custom',
      0x002000E2: 'Other: Generic',
      0x002000E3: 'Other: Generic Enumerator',
      0x002000E4: 'Other: Hinge Angle',
      0x002000F0: 'Vendor Reserved 1',
      0x002000F1: 'Vendor Reserved 2',
      0x002000F2: 'Vendor Reserved 3',
      0x002000F3: 'Vendor Reserved 4',
      0x002000F4: 'Vendor Reserved 5',
      0x002000F5: 'Vendor Reserved 6',
      0x002000F6: 'Vendor Reserved 7',
      0x002000F7: 'Vendor Reserved 8',
      0x002000F8: 'Vendor Reserved 9',
      0x002000F9: 'Vendor Reserved 10',
      0x002000FA: 'Vendor Reserved 11',
      0x002000FB: 'Vendor Reserved 12',
      0x002000FC: 'Vendor Reserved 13',
      0x002000FD: 'Vendor Reserved 14',
      0x002000FE: 'Vendor Reserved 15',
      0x002000FF: 'Vendor Reserved 16',
      0x00200200: 'Event',
      0x00200201: 'Event: Sensor State',
      0x00200202: 'Event: Sensor Event',
      0x00200300: 'Property',
      0x00200301: 'Property: Friendly Name',
      0x00200302: 'Property: Persistent Unique ID',
      0x00200303: 'Property: Sensor Status',
      0x00200304: 'Property: Minimum Report Interval',
      0x00200305: 'Property: Sensor Manufacturer',
      0x00200306: 'Property: Sensor Model',
      0x00200307: 'Property: Sensor Serial Number',
      0x00200308: 'Property: Sensor Description',
      0x00200309: 'Property: Sensor Connection Type',
      0x0020030A: 'Property: Sensor Device Path',
      0x0020030B: 'Property: Hardware Revision',
      0x0020030C: 'Property: Firmware Revision',
      0x0020030D: 'Property: Release Date',
      0x0020030E: 'Property: Report Interval',
      0x0020030F: 'Property: Change Sensitivity Absolute',
      0x00200310: 'Property: Change Sensitivity Percent of Range',
      0x00200311: 'Property: Change Sensitivity Percent Relative',
      0x00200312: 'Property: Accuracy',
      0x00200313: 'Property: Resolution',
      0x00200314: 'Property: Maximum',
      0x00200315: 'Property: Minimum',
      0x00200316: 'Property: Reporting State',
      0x00200317: 'Property: Sampling Rate',
      0x00200318: 'Property: Response Curve',
      0x00200319: 'Property: Power State',
      0x0020031A: 'Property: Maximum FIFO Events',
      0x0020031B: 'Property: Report Latency',
      0x0020031C: 'Property: Flush FIFO Events',
      0x0020031D: 'Property: Maximum Power Consumption',
      0x0020031E: 'Property: Is Primary',
      0x00200400: 'Data Field: Location',
      0x00200402: 'Data Field: Altitude Antenna Sea Level',
      0x00200403: 'Data Field: Differential Reference Station ID',
      0x00200404: 'Data Field: Altitude Ellipsoid Error',
      0x00200405: 'Data Field: Altitude Ellipsoid',
      0x00200406: 'Data Field: Altitude Sea Level Error',
      0x00200407: 'Data Field: Altitude Sea Level',
      0x00200408: 'Data Field: Differential GPS Data Age',
      0x00200409: 'Data Field: Error Radius',
      0x0020040A: 'Data Field: Fix Quality',
      0x0020040B: 'Data Field: Fix Type',
      0x0020040C: 'Data Field: Geoidal Separation',
      0x0020040D: 'Data Field: GPS Operation Mode',
      0x0020040E: 'Data Field: GPS Selection Mode',
      0x0020040F: 'Data Field: GPS Status',
      0x00200410: 'Data Field: Position Dilution of Precision',
      0x00200411: 'Data Field: Horizontal Dilution of Precision',
      0x00200412: 'Data Field: Vertical Dilution of Precision',
      0x00200413: 'Data Field: Latitude',
      0x00200414: 'Data Field: Longitude',
      0x00200415: 'Data Field: True Heading',
      0x00200416: 'Data Field: Magnetic Heading',
      0x00200417: 'Data Field: Magnetic Variation',
      0x00200418: 'Data Field: Speed',
      0x00200419: 'Data Field: Satellites in View',
      0x0020041A: 'Data Field: Satellites in View Azimuth',
      0x0020041B: 'Data Field: Satellites in View Elevation',
      0x0020041C: 'Data Field: Satellites in View IDs',
      0x0020041D: 'Data Field: Satellites in View PRNs',
      0x0020041E: 'Data Field: Satellites in View S/N Ratios',
      0x0020041F: 'Data Field: Satellites Used Count',
      0x00200420: 'Data Field: Satellites Used PRNs',
      0x00200421: 'Data Field: NMEA Sentence',
      0x00200422: 'Data Field: Address Line 1',
      0x00200423: 'Data Field: Address Line 2',
      0x00200424: 'Data Field: City',
      0x00200425: 'Data Field: State or Province',
      0x00200426: 'Data Field: Country or Region',
      0x00200427: 'Data Field: Postal Code',
      0x0020042A: 'Proprety: Location',
      0x0020042B: 'Proprety: Location Desired Accuracy',
      0x00200430: 'Data Field: Environmental',
      0x00200431: 'Data Field: Atmospheric Pressure',
      0x00200433: 'Data Field: Relative Humidity',
      0x00200434: 'Data Field: Temperature',
      0x00200435: 'Data Field: Wind Direction',
      0x00200436: 'Data Field: Wind Speed',
      0x00200437: 'Data Field: Air Quality Index',
      0x00200438: 'Data Field: Equivalent CO2',
      0x00200439: 'Data Field: Volatile Organic Compound Concentration',
      0x0020043A: 'Data Field: Object Presence',
      0x0020043B: 'Data Field: Object Proximity Range',
      0x0020043C: 'Data Field: Object Proximity Out of Range',
      0x00200440: 'Property: Environmental',
      0x00200441: 'Property: Reference Pressure',
      0x00200450: 'Data Field: Motion',
      0x00200451: 'Data Field: Motion State',
      0x00200452: 'Data Field: Acceleration ',
      0x00200453: 'Data Field: Acceleration Axis X',
      0x00200454: 'Data Field: Acceleration Axis Y',
      0x00200455: 'Data Field: Acceleration Axis Z',
      0x00200456: 'Data Field: Angular Velocity',
      0x00200457: 'Data Field: Angular Velocity about X Axis',
      0x00200458: 'Data Field: Angular Velocity about Y Axis',
      0x00200459: 'Data Field: Angular Velocity about Z Axis',
      0x0020045A: 'Data Field: Angular Position',
      0x0020045B: 'Data Field: Angular Position about X Axis',
      0x0020045C: 'Data Field: Angular Position about Y Axis',
      0x0020045D: 'Data Field: Angular Position about Z Axis',
      0x0020045E: 'Data Field: Motion Speed',
      0x0020045F: 'Data Field: Motion Intensity',
      0x00200470: 'Data Field: Orientation',
      0x00200471: 'Data Field: Heading',
      0x00200472: 'Data Field: Heading X Axis',
      0x00200473: 'Data Field: Heading Y Axis',
      0x00200474: 'Data Field: Heading Z Axis',
      0x00200475: 'Data Field: Heading Compensated Magnetic North',
      0x00200476: 'Data Field: Heading Compensated True North',
      0x00200477: 'Data Field: Heading Magnetic North',
      0x00200478: 'Data Field: Heading True North',
      0x00200479: 'Data Field: Distance',
      0x0020047A: 'Data Field: Distance X Axis',
      0x0020047B: 'Data Field: Distance Y Axis',
      0x0020047C: 'Data Field: Distance Z Axis',
      0x0020047D: 'Data Field: Distance Out-of-Range',
      0x0020047E: 'Data Field: Tilt',
      0x0020047F: 'Data Field: Tilt X Axis',
      0x00200480: 'Data Field: Tilt Y Axis',
      0x00200481: 'Data Field: Tilt Z Axis',
      0x00200482: 'Data Field: Rotation Matrix',
      0x00200483: 'Data Field: Quaternion',
      0x00200484: 'Data Field: Magnetic Flux',
      0x00200485: 'Data Field: Magnetic Flux X Axis',
      0x00200486: 'Data Field: Magnetic Flux Y Axis',
      0x00200487: 'Data Field: Magnetic Flux Z Axis',
      0x00200488: 'Data Field: Magnetometer Accuracy',
      0x00200489: 'Data Field: Simple Orientation Direction',
      0x00200490: 'Data Field: Mechanical',
      0x00200491: 'Data Field: Boolean Switch State',
      0x00200492: 'Data Field: Boolean Switch Array States',
      0x00200493: 'Data Field: Multivalue Switch Value',
      0x00200494: 'Data Field: Force',
      0x00200495: 'Data Field: Absolute Pressure',
      0x00200496: 'Data Field: Gauge Pressure',
      0x00200497: 'Data Field: Strain',
      0x00200498: 'Data Field: Weight',
      0x002004A0: 'Property: Mechanical',
      0x002004A1: 'Property: Vibration State',
      0x002004A2: 'Property: Forward Vibration Speed',
      0x002004A3: 'Property: Backward Vibration Speed',
      0x002004B0: 'Data Field: Biometric',
      0x002004B1: 'Data Field: Human Presence',
      0x002004B2: 'Data Field: Human Proximity Range',
      0x002004B3: 'Data Field: Human Proximity Out of Range',
      0x002004B4: 'Data Field: Human Touch State',
      0x002004B5: 'Data Field: Blood Pressure',
      0x002004B6: 'Data Field: Blood Pressure Diastolic',
      0x002004B7: 'Data Field: Blood Pressure Systolic',
      0x002004B8: 'Data Field: Heart Rate',
      0x002004B9: 'Data Field: Resting Heart Rate',
      0x002004BA: 'Data Field: Heartbeat Interval',
      0x002004BB: 'Data Field: Respiratory Rate',
      0x002004BC: 'Data Field: SpO2',
      0x002004D0: 'Data Field: Light',
      0x002004D1: 'Data Field: Illuminance',
      0x002004D2: 'Data Field: Color Temperature',
      0x002004D3: 'Data Field: Chromaticity',
      0x002004D4: 'Data Field: Chromaticity X',
      0x002004D5: 'Data Field: Chromaticity Y',
      0x002004D6: 'Data Field: Consumer IR Sentence Receive',
      0x002004D7: 'Data Field: Infrared Light',
      0x002004D8: 'Data Field: Red Light',
      0x002004D9: 'Data Field: Green Light',
      0x002004DA: 'Data Field: Blue Light',
      0x002004DB: 'Data Field: Ultraviolet A Light',
      0x002004DC: 'Data Field: Ultraviolet B Light',
      0x002004DD: 'Data Field: Ultraviolet Index',
      0x002004DE: 'Data Field: Near Infrared Light',
      0x002004DF: 'Property: Light',
      0x002004E0: 'Property: Consumer IR Sentence Send',
      0x002004E2: 'Property: Auto Brightness Preferred',
      0x002004E3: 'Property: Auto Color Preferred',
      0x002004F0: 'Data Field: Scanner',
      0x002004F1: 'Data Field: RFID Tag 40 Bit',
      0x002004F2: 'Data Field: NFC Sentence Receive',
      0x002004F8: 'Property: Scanner',
      0x002004F9: 'Property: NFC Sentence Send',
      0x00200500: 'Data Field: Electrical',
      0x00200501: 'Data Field: Capacitance',
      0x00200502: 'Data Field: Current',
      0x00200503: 'Data Field: Electrical Power',
      0x00200504: 'Data Field: Inductance',
      0x00200505: 'Data Field: Resistance',
      0x00200506: 'Data Field: Voltage',
      0x00200507: 'Data Field: Frequency',
      0x00200508: 'Data Field: Period',
      0x00200509: 'Data Field: Percent of Range',
      0x00200520: 'Data Field: Time',
      0x00200521: 'Data Field: Year',
      0x00200522: 'Data Field: Month',
      0x00200523: 'Data Field: Day',
      0x00200524: 'Data Field: Day of Week',
      0x00200525: 'Data Field: Hour',
      0x00200526: 'Data Field: Minute',
      0x00200527: 'Data Field: Second',
      0x00200528: 'Data Field: Millisecond',
      0x00200529: 'Data Field: Timestamp',
      0x0020052A: 'Data Field: Julian Day of Year',
      0x0020052B: 'Data Field: Time Since System Boot',
      0x00200530: 'Property: Time',
      0x00200531: 'Property: Time Zone Offset From UTC',
      0x00200532: 'Property: Time Zone Name',
      0x00200533: 'Property: Daylight Savings Time Observed',
      0x00200534: 'Property: Time Trim Adjustment',
      0x00200535: 'Property: Arm Alarm',
      0x00200540: 'Data Field: Custom',
      0x00200541: 'Data Field: Custom Usage',
      0x00200542: 'Data Field: Custom Boolean Array',
      0x00200543: 'Data Field: Custom Value',
      0x00200544: 'Data Field: Custom Value 1',
      0x00200545: 'Data Field: Custom Value 2',
      0x00200546: 'Data Field: Custom Value 3',
      0x00200547: 'Data Field: Custom Value 4',
      0x00200548: 'Data Field: Custom Value 5',
      0x00200549: 'Data Field: Custom Value 6',
      0x0020054A: 'Data Field: Custom Value 7',
      0x0020054B: 'Data Field: Custom Value 8',
      0x0020054C: 'Data Field: Custom Value 9',
      0x0020054D: 'Data Field: Custom Value 10',
      0x0020054E: 'Data Field: Custom Value 11',
      0x0020054F: 'Data Field: Custom Value 12',
      0x00200550: 'Data Field: Custom Value 13',
      0x00200551: 'Data Field: Custom Value 14',
      0x00200552: 'Data Field: Custom Value 15',
      0x00200553: 'Data Field: Custom Value 16',
      0x00200554: 'Data Field: Custom Value 17',
      0x00200555: 'Data Field: Custom Value 18',
      0x00200556: 'Data Field: Custom Value 19',
      0x00200557: 'Data Field: Custom Value 20',
      0x00200558: 'Data Field: Custom Value 21',
      0x00200559: 'Data Field: Custom Value 22',
      0x0020055A: 'Data Field: Custom Value 23',
      0x0020055B: 'Data Field: Custom Value 24',
      0x0020055C: 'Data Field: Custom Value 25',
      0x0020055D: 'Data Field: Custom Value 26',
      0x0020055E: 'Data Field: Custom Value 27',
      0x0020055F: 'Data Field: Custom Value 28',
      0x00200560: 'Data Field: Generic',
      0x00200561: 'Data Field: Generic GUID or PROPERTYKEY',
      0x00200562: 'Data Field: Generic Category GUID',
      0x00200563: 'Data Field: Generic Type GUID',
      0x00200564: 'Data Field: Generic Event PROPERTYKEY',
      0x00200565: 'Data Field: Generic Property PROPERTYKEY',
      0x00200566: 'Data Field: Generic Data Field PROPERTYKEY',
      0x00200567: 'Data Field: Generic Event',
      0x00200568: 'Data Field: Generic Property',
      0x00200569: 'Data Field: Generic Data Field',
      0x0020056A: 'Data Field: Enumerator Table Row Index',
      0x0020056B: 'Data Field: Enumerator Table Row Count',
      0x0020056C: 'Data Field: Generic GUID or PROPERTYKEY kind',
      0x0020056D: 'Data Field: Generic GUID',
      0x0020056E: 'Data Field: Generic PROPERTYKEY',
      0x0020056F: 'Data Field: Generic Top Level Collection ID',
      0x00200570: 'Data Field: Generic Report ID',
      0x00200571: 'Data Field: Generic Report Item Position Index',
      0x00200572: 'Data Field: Generic Firmware VARTYPE',
      0x00200573: 'Data Field: Generic Unit of Measure',
      0x00200574: 'Data Field: Generic Unit Exponent',
      0x00200575: 'Data Field: Generic Report Size',
      0x00200576: 'Data Field: Generic Report Count',
      0x00200580: 'Property: Generic',
      0x00200581: 'Property: Enumerator Table Row Index',
      0x00200582: 'Property: Enumerator Table Row Count',
      0x00200590: 'Data Field: Personal Activity',
      0x00200591: 'Data Field: Activity Type',
      0x00200592: 'Data Field: Activity State',
      0x00200593: 'Data Field: Device Position',
      0x00200594: 'Data Field: Step Count',
      0x00200595: 'Data Field: Step Count Reset',
      0x00200596: 'Data Field: Step Duration',
      0x00200597: 'Data Field: Step Type',
      0x002005A0: 'Property: Minimum Activity Detection Interval',
      0x002005A1: 'Property: Supported Activity Types',
      0x002005A2: 'Property: Subscribed Activity Types',
      0x002005A3: 'Property: Supported Step Types',
      0x002005A4: 'Property: Subscribed Step Types',
      0x002005A5: 'Property: Floor Height',
      0x002005B0: 'Data Field: Custom Type ID',
      0x002005C0: 'Property: Custom',
      0x002005C1: 'Property: Custom Value 1',
      0x002005C2: 'Property: Custom Value 2',
      0x002005C3: 'Property: Custom Value 3',
      0x002005C4: 'Property: Custom Value 4',
      0x002005C5: 'Property: Custom Value 5',
      0x002005C6: 'Property: Custom Value 6',
      0x002005C7: 'Property: Custom Value 7',
      0x002005C8: 'Property: Custom Value 8',
      0x002005C9: 'Property: Custom Value 9',
      0x002005CA: 'Property: Custom Value 10',
      0x002005CB: 'Property: Custom Value 11',
      0x002005CC: 'Property: Custom Value 12',
      0x002005CD: 'Property: Custom Value 13',
      0x002005CE: 'Property: Custom Value 14',
      0x002005CF: 'Property: Custom Value 15',
      0x002005D0: 'Property: Custom Value 16',
      0x002005E0: 'Data Field: Hinge',
      0x002005E1: 'Data Field: Hinge Angle',
      0x002005F0: 'Data Field: Gesture Sensor',
      0x002005F1: 'Data Field: Gesture State',
      0x002005F2: 'Data Field: Hinge Fold Initial Angle',
      0x002005F3: 'Data Field: Hinge Fold Final Angle',
      0x002005F4: 'Data Field: Hinge Fold Contributing Panel',
      0x002005F5: 'Data Field: Hinge Fold Type',
      0x00200800: 'Sensor State: Undefined',
      0x00200801: 'Sensor State: Ready',
      0x00200802: 'Sensor State: Not Available',
      0x00200803: 'Sensor State: No Data',
      0x00200804: 'Sensor State: Initializing',
      0x00200805: 'Sensor State: Access Denied',
      0x00200806: 'Sensor State: Error',
      0x00200810: 'Sensor Event: Unknown',
      0x00200811: 'Sensor Event: State Changed',
      0x00200812: 'Sensor Event: Property Changed',
      0x00200813: 'Sensor Event: Data Updated',
      0x00200814: 'Sensor Event: Poll Response',
      0x00200815: 'Sensor Event: Change Sensitivity',
      0x00200816: 'Sensor Event: Range Maximum Rached',
      0x00200817: 'Sensor Event: Range Minimum Reached',
      0x00200818: 'Sensor Event: High Threshold Cross Upward',
      0x00200819: 'Sensor Event: High Threshold Cross Downward',
      0x0020081A: 'Sensor Event: Low Threshold Cross Upward',
      0x0020081B: 'Sensor Event: Low Threshold Cross Downward',
      0x0020081C: 'Sensor Event: Zero Threshold Cross Upward',
      0x0020081D: 'Sensor Event: Zero Threshold Cross Downward',
      0x0020081E: 'Sensor Event: Period Exceeded',
      0x0020081F: 'Sensor Event: Frequency Exceeded',
      0x00200820: 'Sensor Event: Complex Trigger',
      0x00200830: 'Connection Type: PC Integrated',
      0x00200831: 'Connection Type: PC Attached',
      0x00200832: 'Connection Type: PC External',
      0x00200840: 'Reporting State: Report No Events',
      0x00200841: 'Reporting State: Report All Events',
      0x00200842: 'Reporting State: Report Threshold Events',
      0x00200843: 'Reporting State: Wake On No Events',
      0x00200844: 'Reporting State: Wake On All Events',
      0x00200845: 'Reporting State: Wake On Threshold Events',
      0x00200850: 'Power State: Undefined',
      0x00200851: 'Power State: D0 Full Power',
      0x00200852: 'Power State: D1 Low Power',
      0x00200853: 'Power State: D2 Standby Power with Wakeup',
      0x00200854: 'Power State: D3 Sleep with Wakeup',
      0x00200855: 'Power State: D4 Power Off',
      0x00200860: 'Accuracy: Default',
      0x00200861: 'Accuracy: High',
      0x00200862: 'Accuracy: Medium',
      0x00200863: 'Accuracy: Low',
      0x00200870: 'Fix Quality: No Fix',
      0x00200871: 'Fix Quality: GPS',
      0x00200872: 'Fix Quality: DGPS',
      0x00200880: 'Fix Type: No Fix',
      0x00200881: 'Fix Type: GPS SPS Mode, Fix Valid',
      0x00200882: 'Fix Type: DGPS SPS Mode, Fix Valid',
      0x00200883: 'Fix Type: GPS PPS Mode, Fix Valid',
      0x00200884: 'Fix Type: Real Time Kinematic',
      0x00200885: 'Fix Type: Float RTK',
      0x00200886: 'Fix Type: Estimated (dead reckoned)',
      0x00200887: 'Fix Type: Manual Input Mode',
      0x00200888: 'Fix Type: Simulator Mode',
      0x00200890: 'GPS Operation Mode: Manual',
      0x00200891: 'GPS Operation Mode: Automatic',
      0x002008A0: 'GPS Selection Mode: Autonomous',
      0x002008A1: 'GPS Selection Mode: DGPS',
      0x002008A2: 'GPS Selection Mode: Estimated (dead reckoned)',
      0x002008A3: 'GPS Selection Mode: Manual Input',
      0x002008A4: 'GPS Selection Mode: Simulator',
      0x002008A5: 'GPS Selection Mode: Data Not Valid',
      0x002008B0: 'GPS Status Data: Valid',
      0x002008B1: 'GPS Status Data: Not Valid',
      0x002008C0: 'Day of Week: Sunday',
      0x002008C1: 'Day of Week: Monday',
      0x002008C2: 'Day of Week: Tuesday',
      0x002008C3: 'Day of Week: Wednesday',
      0x002008C4: 'Day of Week: Thursday',
      0x002008C5: 'Day of Week: Friday',
      0x002008C6: 'Day of Week: Saturday',
      0x002008D0: 'Kind: Category',
      0x002008D1: 'Kind: Type',
      0x002008D2: 'Kind: Event',
      0x002008D3: 'Kind: Property',
      0x002008D4: 'Kind: Data Field',
      0x002008E0: 'Magnetometer Accuracy: Low',
      0x002008E1: 'Magnetometer Accuracy: Medium',
      0x002008E2: 'Magnetometer Accuracy: High',
      0x002008F0: 'Simple Orientation Direction: Not Rotated',
      0x002008F1: 'Simple Orientation Direction: Rotated 90 Degrees CCW',
      0x002008F2: 'Simple Orientation Direction: Rotated 180 Degrees CCW',
      0x002008F3: 'Simple Orientation Direction: Rotated 270 Degrees CCW',
      0x002008F4: 'Simple Orientation Direction: Face Up',
      0x002008F5: 'Simple Orientation Direction: Face Down',
      0x00200900: 'VT_NULL',
      0x00200901: 'VT_BOOL',
      0x00200902: 'VT_UI1',
      0x00200903: 'VT_I1',
      0x00200904: 'VT_UI2',
      0x00200905: 'VT_I2',
      0x00200906: 'VT_UI4',
      0x00200907: 'VT_I4',
      0x00200908: 'VT_UI8',
      0x00200909: 'VT_I8',
      0x0020090A: 'VT_R4',
      0x0020090B: 'VT_R8',
      0x0020090C: 'VT_WSTR',
      0x0020090D: 'VT_STR',
      0x0020090E: 'VT_CLSID',
      0x0020090F: 'VT_VECTOR VT_UI1',
      0x00200910: 'VT_F16E0',
      0x00200911: 'VT_F16E1',
      0x00200912: 'VT_F16E2',
      0x00200913: 'VT_F16E3',
      0x00200914: 'VT_F16E4',
      0x00200915: 'VT_F16E5',
      0x00200916: 'VT_F16E6',
      0x00200917: 'VT_F16E7',
      0x00200918: 'VT_F16E8',
      0x00200919: 'VT_F16E9',
      0x0020091A: 'VT_F16EA',
      0x0020091B: 'VT_F16EB',
      0x0020091C: 'VT_F16EC',
      0x0020091D: 'VT_F16ED',
      0x0020091E: 'VT_F16EE',
      0x0020091F: 'VT_F16EF',
      0x00200920: 'VT_F32E0',
      0x00200921: 'VT_F32E1',
      0x00200922: 'VT_F32E2',
      0x00200923: 'VT_F32E3',
      0x00200924: 'VT_F32E4',
      0x00200925: 'VT_F32E5',
      0x00200926: 'VT_F32E6',
      0x00200927: 'VT_F32E7',
      0x00200928: 'VT_F32E8',
      0x00200929: 'VT_F32E9',
      0x0020092A: 'VT_F32EA',
      0x0020092B: 'VT_F32EB',
      0x0020092C: 'VT_F32EC',
      0x0020092D: 'VT_F32ED',
      0x0020092E: 'VT_F32EE',
      0x0020092F: 'VT_F32EF',
      0x00200930: 'Activity Type: Unknown',
      0x00200931: 'Activity Type: Stationary',
      0x00200932: 'Activity Type: Fidgeting',
      0x00200933: 'Activity Type: Walking',
      0x00200934: 'Activity Type: Running',
      0x00200935: 'Activity Type: In Vehicle',
      0x00200936: 'Activity Type: Biking',
      0x00200937: 'Activity Type: Idle',
      0x00200940: 'Unit: Not Specified',
      0x00200941: 'Unit: Lux',
      0x00200942: 'Unit: Degrees Kelvin',
      0x00200943: 'Unit: Degrees Celsius',
      0x00200944: 'Unit: Pascal',
      0x00200945: 'Unit: Newton',
      0x00200946: 'Unit: Meters/Second',
      0x00200947: 'Unit: Kilogram',
      0x00200948: 'Unit: Meter',
      0x00200949: 'Unit: Meters/Second/Second',
      0x0020094A: 'Unit: Farad',
      0x0020094B: 'Unit: Ampere',
      0x0020094C: 'Unit: Watt',
      0x0020094D: 'Unit: Henry',
      0x0020094E: 'Unit: Ohm',
      0x0020094F: 'Unit: Volt',
      0x00200950: 'Unit: Hertz',
      0x00200951: 'Unit: Bar',
      0x00200952: 'Unit: Degrees Anti-clockwise',
      0x00200953: 'Unit: Degrees Clockwise',
      0x00200954: 'Unit: Degrees',
      0x00200955: 'Unit: Degrees/Second',
      0x00200956: 'Unit: Degrees/Second/Second',
      0x00200957: 'Unit: Knot',
      0x00200958: 'Unit: Percent',
      0x00200959: 'Unit: Second',
      0x0020095A: 'Unit: Millisecond',
      0x0020095B: 'Unit: G',
      0x0020095C: 'Unit: Byte',
      0x0020095D: 'Unit: Milligauss',
      0x0020095E: 'Unit: Bits',
      0x00200960: 'Activity State: No State Change',
      0x00200961: 'Activity State: Start Activity',
      0x00200962: 'Activity State: End Activity',
      0x00200970: 'Exponent 0',
      0x00200971: 'Exponent 1',
      0x00200972: 'Exponent 2',
      0x00200973: 'Exponent 3',
      0x00200974: 'Exponent 4',
      0x00200975: 'Exponent 5',
      0x00200976: 'Exponent 6',
      0x00200977: 'Exponent 7',
      0x00200978: 'Exponent 8',
      0x00200979: 'Exponent 9',
      0x0020097A: 'Exponent A',
      0x0020097B: 'Exponent B',
      0x0020097C: 'Exponent C',
      0x0020097D: 'Exponent D',
      0x0020097E: 'Exponent E',
      0x0020097F: 'Exponent F',
      0x00200980: 'Device Position: Unknown',
      0x00200981: 'Device Position: Unchanged',
      0x00200982: 'Device Position: On Desk',
      0x00200983: 'Device Position: In Hand',
      0x00200984: 'Device Position: Moving in Bag',
      0x00200985: 'Device Position: Stationary in Bag',
      0x00200990: 'Step Type: Unknown',
      0x00200991: 'Step Type: Running',
      0x00200992: 'Step Type: Walking',
      0x002009A0: 'Gesture State: Unknown',
      0x002009A1: 'Gesture State: Started',
      0x002009A2: 'Gesture State: Completed',
      0x002009A3: 'Gesture State: Cancelled',
      0x002009B0: 'Hinge Fold Contributing Panel: Unknown',
      0x002009B1: 'Hinge Fold Contributing Panel: Panel 1',
      0x002009B2: 'Hinge Fold Contributing Panel: Panel 2',
      0x002009B3: 'Hinge Fold Contributing Panel: Both',
      0x002009B4: 'Hinge Fold Type: Unknown',
      0x002009B5: 'Hinge Fold Type: Increasing',
      0x002009B6: 'Hinge Fold Type: Decreasing',
      0x00201000: 'Modifier: Change Sensitivity Absolute',
      0x00202000: 'Modifier: Maximum',
      0x00203000: 'Modifier: Minimum',
      0x00204000: 'Modifier: Accuracy',
      0x00205000: 'Modifier: Resolution',
      0x00206000: 'Modifier: Threshold High',
      0x00207000: 'Modifier: Threshold Low',
      0x00208000: 'Modifier: Calibration Offset',
      0x00209000: 'Modifier: Calibration Multiplier',
      0x0020A000: 'Modifier: Report Interval',
      0x0020B000: 'Modifier: Frequency Max',
      0x0020C000: 'Modifier: Period Max',
      0x0020D000: 'Modifier: Change Sensitivity Percent of Range',
      0x0020E000: 'Modifier: Change Sensitivity Percent Relative',
      0x0020F000: 'Modifier: Vendor Reserved',
      // Medical Instrument
      0x00400001: 'Medical Ultrasound',
      0x00400020: 'VCR/Acquisition',
      0x00400021: 'Freeze/Thaw',
      0x00400022: 'Clip Store',
      0x00400023: 'Update',
      0x00400024: 'Next',
      0x00400025: 'Save',
      0x00400026: 'Print',
      0x00400027: 'Microphone Enable',
      0x00400040: 'Cine',
      0x00400041: 'Transmit Power',
      0x00400042: 'Volume',
      0x00400043: 'Focus',
      0x00400044: 'Depth',
      0x00400060: 'Soft Step - Primary',
      0x00400061: 'Soft Step - Secondary',
      0x00400070: 'Depth Gain Compensation',
      0x00400080: 'Zoom Select',
      0x00400081: 'Zoom Adjust',
      0x00400082: 'Spectral Doppler Mode Select',
      0x00400083: 'Spectral Doppler Adjust',
      0x00400084: 'Color Doppler Mode Select',
      0x00400085: 'Color Doppler Adjust',
      0x00400086: 'Motion Mode Select',
      0x00400087: 'Motion Mode Adjust',
      0x00400088: '2-D Mode Select',
      0x00400089: '2-D Mode Adjust',
      0x004000A0: 'Soft Control Select',
      0x004000A1: 'Soft Control Adjust',
      // Braille Display
      0x00410001: 'Braille Display',
      0x00410002: 'Braille Row',
      0x00410003: '8 Dot Braille Cell',
      0x00410004: '6 Dot Braille Cell',
      0x00410005: 'Number of Braille Cells',
      0x00410006: 'Screen Reader Control',
      0x00410007: 'Screen Reader Identifier',
      0x004100FA: 'Router Set 1',
      0x004100FB: 'Router Set 2',
      0x004100FC: 'Router Set 3',
      0x00410100: 'Router Key',
      0x00410101: 'Row Router Key',
      0x00410200: 'Braille Buttons',
      0x00410201: 'Braille Keyboard Dot 1',
      0x00410202: 'Braille Keyboard Dot 2',
      0x00410203: 'Braille Keyboard Dot 3',
      0x00410204: 'Braille Keyboard Dot 4',
      0x00410205: 'Braille Keyboard Dot 5',
      0x00410206: 'Braille Keyboard Dot 6',
      0x00410207: 'Braille Keyboard Dot 7',
      0x00410208: 'Braille Keyboard Dot 8',
      0x00410209: 'Braille Keyboard Space',
      0x0041020A: 'Braille Keyboard Left Space',
      0x0041020B: 'Braille Keyboard Right Space',
      0x0041020C: 'Braille Face Controls',
      0x0041020D: 'Braille Left Controls',
      0x0041020E: 'Braille Right Controls',
      0x0041020F: 'Braille Top Controls',
      0x00410210: 'Braille Joystick Center',
      0x00410211: 'Braille Joystick Up',
      0x00410212: 'Braille Joystick Down',
      0x00410213: 'Braille Joystick Left',
      0x00410214: 'Braille Joystick Right',
      0x00410215: 'Braille D-Pad Center',
      0x00410216: 'Braille D-Pad Up',
      0x00410217: 'Braille D-Pad Down',
      0x00410218: 'Braille D-Pad Left',
      0x00410219: 'Braille D-Pad Right',
      0x0041021A: 'Braille Pan Left',
      0x0041021B: 'Braille Pan Right',
      0x0041021C: 'Braille Rocker Up',
      0x0041021D: 'Braille Rocker Down',
      0x0041021E: 'Braille Rocker Press',
      // Lighting and Illumination
      0x00590001: 'LampArray',
      0x00590002: 'LampArrayAttributesReport',
      0x00590003: 'LampCount',
      0x00590004: 'BoundingBoxWidthInMicrometers',
      0x00590005: 'BoundingBoxHeightInMicrometers',
      0x00590006: 'BoundingBoxDepthInMicrometers',
      0x00590007: 'LampArrayKind',
      0x00590008: 'MinUpdateIntervalInMicroseconds',
      0x00590020: 'LampAttributesRequestReport',
      0x00590021: 'LampId',
      0x00590022: 'LampAttributesResponseReport',
      0x00590023: 'PositionXInMicrometers',
      0x00590024: 'PositionYInMicrometers',
      0x00590025: 'PositionZInMicrometers',
      0x00590026: 'LampPurposes',
      0x00590027: 'UpdateLatencyInMicroseconds',
      0x00590028: 'RedLevelCount',
      0x00590029: 'GreenLevelCount',
      0x0059002A: 'BlueLevelCount',
      0x0059002B: 'IntensityLevelCount',
      0x0059002C: 'IsProgrammable',
      0x0059002D: 'InputBinding',
      0x00590050: 'LampMultiUpdateReport',
      0x00590051: 'RedUpdateChannel',
      0x00590052: 'GreenUpdateChannel',
      0x00590053: 'BlueUpdateChannel',
      0x00590054: 'IntensityUpdateChannel',
      0x00590055: 'LampUpdateFlags',
      0x00590060: 'LampRangeUpdateReport',
      0x00590061: 'LampIdStart',
      0x00590062: 'LampIdEnd',
      0x00590070: 'LampArrayControlReport',
      0x00590071: 'AutonomousMode',
      // USB Monitor
      0x00800001: 'Monitor Control',
      0x00800002: 'EDID Information',
      0x00800003: 'VDIF Information',
      0x00800004: 'VESA Version',
      // VESA Virtual Controls
      0x00820001: 'Degauss',
      0x00820010: 'Brightness',
      0x00820012: 'Contrast',
      0x00820016: 'Red Video Gain',
      0x00820018: 'Green Video Gain',
      0x0082001A: 'Blue Video Gain',
      0x0082001C: 'Focus',
      0x00820020: 'Horizontal Position',
      0x00820022: 'Horizontal Size',
      0x00820024: 'Horizontal Pincushion',
      0x00820026: 'Horizontal Pincushion Balance',
      0x00820028: 'Horizontal Misconvergence',
      0x0082002A: 'Horizontal Linearity',
      0x0082002C: 'Horizontal Linearity Balance',
      0x00820030: 'Vertical Position',
      0x00820032: 'Vertical Size',
      0x00820034: 'Vertical Pincushion',
      0x00820036: 'Vertical Pincushion Balance',
      0x00820038: 'Vertical Misconvergence',
      0x0082003A: 'Vertical Linearity',
      0x0082003C: 'Vertical Linearity Balance',
      0x00820040: 'Parallelogram Distortion (Key Balance)',
      0x00820042: 'Trapezoidal Distortion (Key)',
      0x00820044: 'Tilt (Rotation)',
      0x00820046: 'Top Corner Distortion Control',
      0x00820048: 'Top Corner Distortion Balance',
      0x0082004A: 'Bottom Corner Distortion Control',
      0x0082004C: 'Bottom Corner Distortion Balance',
      0x00820056: 'Horizontal Moiré',
      0x00820058: 'Vertical Moiré',
      0x0082005E: 'Input Level Select',
      0x00820060: 'Input Source Select',
      0x0082006C: 'Red Video Black Level',
      0x0082006E: 'Green Video Black Level',
      0x00820070: 'Blue Video Black Level',
      0x008200A2: 'Auto Size Center',
      0x008200A4: 'Polarity Horizontal Synchronization',
      0x008200A6: 'Polarity Vertical Synchronization',
      0x008200A8: 'Synchronization Type',
      0x008200AA: 'Screen Orientation',
      0x008200AC: 'Horizontal Frequency',
      0x008200AE: 'Vertical Frequency',
      0x008200B0: 'Settings',
      0x008200CA: 'On Screen Display',
      0x008200D4: 'StereoMode',
      // Power Device
      0x00840001: 'iName',
      0x00840002: 'PresentStatus',
      0x00840003: 'ChangedStatus',
      0x00840004: 'UPS',
      0x00840005: 'PowerSupply',
      0x00840010: 'BatterySystem',
      0x00840011: 'BatterySystemID',
      0x00840012: 'Battery',
      0x00840013: 'BatteryID',
      0x00840014: 'Charger',
      0x00840015: 'ChargerID',
      0x00840016: 'PowerConverter',
      0x00840017: 'PowerConverterID',
      0x00840018: 'OutletSystem',
      0x00840019: 'OutletSystemID',
      0x0084001A: 'Input',
      0x0084001B: 'InputID',
      0x0084001C: 'Output',
      0x0084001D: 'OutputID',
      0x0084001E: 'Flow',
      0x0084001F: 'FlowID',
      0x00840020: 'Outlet',
      0x00840021: 'OutletID',
      0x00840022: 'Gang',
      0x00840023: 'GangID',
      0x00840024: 'PowerSummary',
      0x00840025: 'PowerSummaryID',
      0x00840030: 'Voltage',
      0x00840031: 'Current',
      0x00840032: 'Frequency',
      0x00840033: 'ApparentPower',
      0x00840034: 'ActivePower',
      0x00840035: 'PercentLoad',
      0x00840036: 'Temperature',
      0x00840037: 'Humidity',
      0x00840038: 'BadCount',
      0x00840040: 'ConfigVoltage',
      0x00840041: 'ConfigCurrent',
      0x00840042: 'ConfigFrequency',
      0x00840043: 'ConfigApparentPower',
      0x00840044: 'ConfigActivePower',
      0x00840045: 'ConfigPercentLoad',
      0x00840046: 'ConfigTemperature',
      0x00840047: 'ConfigHumidity',
      0x00840050: 'SwitchOnControl',
      0x00840051: 'SwitchOffControl',
      0x00840052: 'ToggleControl',
      0x00840053: 'LowVoltageTransfer',
      0x00840054: 'HighVoltageTransfer',
      0x00840055: 'DelayBeforeReboot',
      0x00840056: 'DelayBeforeStartup',
      0x00840057: 'DelayBeforeShutdown',
      0x00840058: 'Test',
      0x00840059: 'ModuleReset',
      0x0084005A: 'AudibleAlarmControl',
      0x00840060: 'Present',
      0x00840061: 'Good',
      0x00840062: 'InternalFailure',
      0x00840063: 'VoltageOutOfRange',
      0x00840064: 'FrequencyOutOfRange',
      0x00840065: 'Overload',
      0x00840066: 'OverCharged',
      0x00840067: 'OverTemperature',
      0x00840068: 'ShutdownRequested',
      0x00840069: 'ShutdownImminent',
      0x0084006B: 'SwitchOn/Off',
      0x0084006C: 'Switchable',
      0x0084006D: 'Used',
      0x0084006E: 'Boost',
      0x0084006F: 'Buck',
      0x00840070: 'Initialized',
      0x00840071: 'Tested',
      0x00840072: 'AwaitingPower',
      0x00840073: 'CommunicationLost',
      0x008400FD: 'iManufacturer',
      0x008400FE: 'iProduct',
      0x008400FF: 'iSerialNumber',
      // Battery System
      0x00850001: 'SMBBatteryMode',
      0x00850002: 'SMBBatteryStatus',
      0x00850003: 'SMBAlarmWarning',
      0x00850004: 'SMBChargerMode',
      0x00850005: 'SMBChargerStatus',
      0x00850006: 'SMBChargerSpecInfo',
      0x00850007: 'SMBSelectorState',
      0x00850008: 'SMBSelectorPresets',
      0x00850009: 'SMBSelectorInfo',
      0x00850010: 'OptionalMfgFunction1',
      0x00850011: 'OptionalMfgFunction2',
      0x00850012: 'OptionalMfgFunction3',
      0x00850013: 'OptionalMfgFunction4',
      0x00850014: 'OptionalMfgFunction5',
      0x00850015: 'ConnectionToSMBus',
      0x00850016: 'OutputConnection',
      0x00850017: 'ChargerConnection',
      0x00850018: 'BatteryInsertion',
      0x00850019: 'UseNext',
      0x0085001A: 'OKToUse',
      0x0085001B: 'BatterySupported',
      0x0085001C: 'SelectorRevision',
      0x0085001D: 'ChargingIndicator',
      0x00850028: 'ManufacturerAccess',
      0x00850029: 'RemainingCapacityLimit',
      0x0085002A: 'RemainingTimeLimit',
      0x0085002B: 'AtRate',
      0x0085002C: 'CapacityMode',
      0x0085002D: 'BroadcastToCharger',
      0x0085002E: 'PrimaryBattery',
      0x0085002F: 'ChargeController',
      0x00850040: 'TerminateCharge',
      0x00850041: 'TerminateDischarge',
      0x00850042: 'BelowRemainingCapacityLimit',
      0x00850043: 'RemainingTimeLimitExpired',
      0x00850044: 'Charging',
      0x00850045: 'Discharging',
      0x00850046: 'FullyCharged',
      0x00850047: 'FullyDischarged',
      0x00850048: 'ConditioningFlag',
      0x00850049: 'AtRateOK',
      0x0085004A: 'SMBErrorCode',
      0x0085004B: 'NeedReplacement',
      0x00850060: 'AtRateTimeToFull',
      0x00850061: 'AtRateTimeToEmpty',
      0x00850062: 'AverageCurrent',
      0x00850063: 'Maxerror',
      0x00850064: 'RelativeStateOfCharge',
      0x00850065: 'AbsoluteStateOfCharge',
      0x00850066: 'RemainingCapacity',
      0x00850067: 'FullChargeCapacity',
      0x00850068: 'RunTimeToEmpty',
      0x00850069: 'AverageTimeToEmpty',
      0x0085006A: 'AverageTimeToFull',
      0x0085006B: 'CycleCount',
      0x00850080: 'BattPackModelLevel',
      0x00850081: 'InternalChargeController',
      0x00850082: 'PrimaryBatterySupport',
      0x00850083: 'DesignCapacity',
      0x00850084: 'SpecificationInfo',
      0x00850085: 'ManufacturerDate',
      0x00850086: 'SerialNumber',
      0x00850087: 'iManufacturerName',
      0x00850088: 'iDevicename',
      0x00850089: 'iDeviceChemistry',
      0x0085008A: 'ManufacturerData',
      0x0085008B: 'Rechargable',
      0x0085008C: 'WarningCapacityLimit',
      0x0085008D: 'CapacityGranularity1',
      0x0085008E: 'CapacityGranularity2',
      0x0085008F: 'iOEMInformation',
      0x008500C0: 'InhibitCharge',
      0x008500C1: 'EnablePolling',
      0x008500C2: 'ResetToZero',
      0x008500D0: 'ACPresent',
      0x008500D1: 'BatteryPresent',
      0x008500D2: 'PowerFail',
      0x008500D3: 'AlarmInhibited',
      0x008500D4: 'ThermistorUnderRange',
      0x008500D5: 'ThermistorHot',
      0x008500D6: 'ThermistorCold',
      0x008500D7: 'ThermistorOverRange',
      0x008500D8: 'VoltageOutOfRange',
      0x008500D9: 'CurrentOutOfRange',
      0x008500DA: 'CurrentNotRegulated',
      0x008500DB: 'VoltageNotRegulated',
      0x008500DC: 'MasterMode',
      0x008500F0: 'ChargerSelectorSupport',
      0x008500F1: 'ChargerSpec',
      0x008500F2: 'Level2',
      0x008500F3: 'Level3',
      // Bar Code Scanner
      0x008C0001: 'Bar Code Badge Reader',
      0x008C0002: 'Bar Code Scanner',
      0x008C0003: 'Dumb Bar Code Scanner',
      0x008C0004: 'Cordless Scanner Base',
      0x008C0005: 'Bar Code Scanner Cradle',
      0x008C0010: 'Attribute Report',
      0x008C0011: 'Settings Report',
      0x008C0012: 'Scanned Data Report',
      0x008C0013: 'Raw Scanned Data Report',
      0x008C0014: 'Trigger Report',
      0x008C0015: 'Status Report',
      0x008C0016: 'UPC/EAN Control Report',
      0x008C0017: 'EAN 2/3 Label Control Report',
      0x008C0018: 'Code 39 Control Report',
      0x008C0019: 'Interleaved 2 of 5 Control Report',
      0x008C001A: 'Standard 2 of 5 Control Report',
      0x008C001B: 'MSI Plessey Control Report',
      0x008C001C: 'Codabar Control Report',
      0x008C001D: 'Code 128 Control Report',
      0x008C001E: 'Misc 1D Control Report',
      0x008C001F: '2D Control Report',
      0x008C0030: 'Aiming/Pointer Mode',
      0x008C0031: 'Bar Code Present Sensor',
      0x008C0032: 'Class 1A Laser',
      0x008C0033: 'Class 2 Laser',
      0x008C0034: 'Heater Present',
      0x008C0035: 'Contact Scanner',
      0x008C0036: 'Electronic Article Surveillance Notification',
      0x008C0037: 'Constant Electronic Article Surveillance',
      0x008C0038: 'Error Indication',
      0x008C0039: 'Fixed Beeper',
      0x008C003A: 'Good Decode Indication',
      0x008C003B: 'Hands Free Scanning',
      0x008C003C: 'Intrinsically Safe',
      0x008C003D: 'Klasse Eins Laser',
      0x008C003E: 'Long Range Scanner',
      0x008C003F: 'Mirror Speed Control',
      0x008C0040: 'Not On File Indication',
      0x008C0041: 'Programmable Beeper',
      0x008C0042: 'Triggerless',
      0x008C0043: 'Wand',
      0x008C0044: 'Water Resistant',
      0x008C0045: 'Multi-Range Scanner',
      0x008C0046: 'Proximity Sensor',
      0x008C004D: 'Fragment Decoding',
      0x008C004E: 'Scanner Read Confidence',
      0x008C004F: 'Data Prefix',
      0x008C0050: 'Prefix AIMI',
      0x008C0051: 'Prefix None',
      0x008C0052: 'Prefix Proprietary',
      0x008C0055: 'Active Time',
      0x008C0056: 'Aiming Laser Pattern',
      0x008C0057: 'Bar Code Present',
      0x008C0058: 'Beeper State',
      0x008C0059: 'Laser On Time',
      0x008C005A: 'Laser State',
      0x008C005B: 'Lockout Time',
      0x008C005C: 'Motor State',
      0x008C005D: 'Motor Timeout',
      0x008C005E: 'Power On Reset Scanner',
      0x008C005F: 'Prevent Read of Barcodes',
      0x008C0060: 'Initiate Barcode Read',
      0x008C0061: 'Trigger State',
      0x008C0062: 'Trigger Mode',
      0x008C0063: 'Trigger Mode Blinking Laser On',
      0x008C0064: 'Trigger Mode Continuous Laser On',
      0x008C0065: 'Trigger Mode Laser on while Pulled',
      0x008C0066: 'Trigger Mode Laser stays on after Trigger release',
      0x008C006D: 'Commit Parameters to NVM',
      0x008C006E: 'Parameter Scanning',
      0x008C006F: 'Parameters Changed',
      0x008C0070: 'Set parameter default values',
      0x008C0075: 'Scanner In Cradle',
      0x008C0076: 'Scanner In Range',
      0x008C007A: 'Aim Duration',
      0x008C007B: 'Good Read Lamp Duration',
      0x008C007C: 'Good Read Lamp Intensity',
      0x008C007D: 'Good Read LED',
      0x008C007E: 'Good Read Tone Frequency',
      0x008C007F: 'Good Read Tone Length',
      0x008C0080: 'Good Read Tone Volume',
      0x008C0082: 'No Read Message',
      0x008C0083: 'Not on File Volume',
      0x008C0084: 'Powerup Beep',
      0x008C0085: 'Sound Error Beep',
      0x008C0086: 'Sound Good Read Beep',
      0x008C0087: 'Sound Not On File Beep',
      0x008C0088: 'Good Read When to Write',
      0x008C0089: 'GRWTI After Decode',
      0x008C008A: 'GRWTI Beep/Lamp after transmit',
      0x008C008B: 'GRWTI No Beep/Lamp use at all',
      0x008C0091: 'Bookland EAN',
      0x008C0092: 'Convert EAN 8 to 13 Type',
      0x008C0093: 'Convert UPC A to EAN-13',
      0x008C0094: 'Convert UPC-E to A',
      0x008C0095: 'EAN-13',
      0x008C0096: 'EAN-8',
      0x008C0097: 'EAN-99 128_Mandatory',
      0x008C0098: 'EAN-99 P5/128_Optional',
      0x008C009A: 'UPC/EAN',
      0x008C009B: 'UPC/EAN Coupon Code',
      0x008C009C: 'UPC/EAN Periodicals',
      0x008C009D: 'UPC-A',
      0x008C009E: 'UPC-A with 128 Mandatory',
      0x008C009F: 'UPC-A with 128 Optional',
      0x008C00A0: 'UPC-A with P5 Optional',
      0x008C00A1: 'UPC-E',
      0x008C00A2: 'UPC-E1',
      0x008C00A9: 'Periodical',
      0x008C00AA: 'Periodical Auto-Discriminate + 2',
      0x008C00AB: 'Periodical Only Decode with + 2',
      0x008C00AC: 'Periodical Ignore + 2',
      0x008C00AD: 'Periodical Auto-Discriminate + 5',
      0x008C00AE: 'Periodical Only Decode with + 5',
      0x008C00AF: 'Periodical Ignore + 5',
      0x008C00B0: 'Check',
      0x008C00B1: 'Check Disable Price',
      0x008C00B2: 'Check Enable 4 digit Price',
      0x008C00B3: 'Check Enable 5 digit Price',
      0x008C00B4: 'Check Enable European 4 digit Price',
      0x008C00B5: 'Check Enable European 5 digit Price',
      0x008C00B7: 'EAN Two Label',
      0x008C00B8: 'EAN Three Label',
      0x008C00B9: 'EAN 8 Flag Digit 1',
      0x008C00BA: 'EAN 8 Flag Digit 2',
      0x008C00BB: 'EAN 8 Flag Digit 3',
      0x008C00BC: 'EAN 13 Flag Digit 1',
      0x008C00BD: 'EAN 13 Flag Digit 2',
      0x008C00BE: 'EAN 13 Flag Digit 3',
      0x008C00BF: 'Add EAN 2/3 Label Definition',
      0x008C00C0: 'Clear all EAN 2/3 Label Definitions',
      0x008C00C3: 'Codabar',
      0x008C00C4: 'Code 128',
      0x008C00C7: 'Code 39',
      0x008C00C8: 'Code 93',
      0x008C00C9: 'Full ASCII Conversion',
      0x008C00CA: 'Interleaved 2 of 5',
      0x008C00CB: 'Italian Pharmacy Code',
      0x008C00CC: 'MSI/Plessey',
      0x008C00CD: 'Standard 2 of 5 IATA',
      0x008C00CE: 'Standard 2 of 5',
      0x008C00D3: 'Transmit Start/Stop',
      0x008C00D4: 'Tri-Optic',
      0x008C00D5: 'UCC/EAN-128',
      0x008C00D6: 'Check Digit',
      0x008C00D7: 'Check Digit Disable',
      0x008C00D8: 'Check Digit Enable Interleaved 2 of 5 OPCC',
      0x008C00D9: 'Check Digit Enable Interleaved 2 of 5 USS',
      0x008C00DA: 'Check Digit Enable Enable Standard 2 of 5 OPCC',
      0x008C00DB: 'Check Digit Enable Enable Standard 2 of 5 USS',
      0x008C00DC: 'Check Digit Enable One MSI Plessey',
      0x008C00DD: 'Check Digit Enable Two MSI Plessey',
      0x008C00DE: 'Check Digit Codabar Enable',
      0x008C00DF: 'Check Digit Code 39 Enable',
      0x008C00F0: 'Transmit Check Digit',
      0x008C00F1: 'Disable Check Digit Transmit',
      0x008C00F2: 'Enable Check Digit Transmit',
      0x008C00FB: 'Symbology Identifier 1',
      0x008C00FC: 'Symbology Identifier 2',
      0x008C00FD: 'Symbology Identifier 3',
      0x008C00FE: 'Decoded Data',
      0x008C00FF: 'Decode Data Continued',
      0x008C0100: 'Bar Space Data',
      0x008C0101: 'Scanner Data Accuracy',
      0x008C0102: 'Raw Data Polarity',
      0x008C0103: 'Polarity Inverted Bar Code',
      0x008C0104: 'Polarity Normal Bar Code',
      0x008C0106: 'Minimum Length to Decode',
      0x008C0107: 'Maximum Length to Decode',
      0x008C0108: 'First Discrete Length to Decode',
      0x008C0109: 'Second Discrete Length to Decode',
      0x008C010A: 'Data Length Method',
      0x008C010B: 'DL Method Read any',
      0x008C010C: 'DL Method Check in Range',
      0x008C010D: 'DL Method Check for Discrete',
      0x008C0110: 'Aztec Code',
      0x008C0111: 'BC412',
      0x008C0112: 'Channel Code',
      0x008C0113: 'Code 16',
      0x008C0114: 'Code 32',
      0x008C0115: 'Code 49',
      0x008C0116: 'Code One',
      0x008C0117: 'Colorcode',
      0x008C0118: 'Data Matrix',
      0x008C0119: 'MaxiCode',
      0x008C011A: 'MicroPDF',
      0x008C011B: 'PDF-417',
      0x008C011C: 'PosiCode',
      0x008C011D: 'QR Code',
      0x008C011E: 'SuperCode',
      0x008C011F: 'UltraCode',
      0x008C0120: 'USD-5 (Slug Code)',
      0x008C0121: 'VeriCode',
      // Weighing Devices
      0x008D0001: 'Weighing Device',
      0x008D0020: 'Scale Device',
      0x008D0021: 'Scale Class I Metric',
      0x008D0022: 'Scale Class I Metric',
      0x008D0023: 'Scale Class II Metric',
      0x008D0024: 'Scale Class III Metric',
      0x008D0025: 'Scale Class IIIL Metric',
      0x008D0026: 'Scale Class IV Metric',
      0x008D0027: 'Scale Class III English',
      0x008D0028: 'Scale Class IIIL English',
      0x008D0029: 'Scale Class IV English',
      0x008D002A: 'Scale Class Generic',
      0x008D0030: 'Scale Attribute Report',
      0x008D0031: 'Scale Control Report',
      0x008D0032: 'Scale Data Report',
      0x008D0033: 'Scale Status Report',
      0x008D0034: 'Scale Weight Limit Report',
      0x008D0035: 'Scale Statistics Report',
      0x008D0040: 'Data Weight',
      0x008D0041: 'Data Scaling',
      0x008D0050: 'Weight Unit',
      0x008D0051: 'Weight Unit Milligram',
      0x008D0052: 'Weight Unit Gram',
      0x008D0053: 'Weight Unit Kilogram',
      0x008D0054: 'Weight Unit Carats',
      0x008D0055: 'Weight Unit Taels',
      0x008D0056: 'Weight Unit Grains',
      0x008D0057: 'Weight Unit Pennyweights',
      0x008D0058: 'Weight Unit Metric Ton',
      0x008D0059: 'Weight Unit Avoir Ton',
      0x008D005A: 'Weight Unit Troy Ounce',
      0x008D005B: 'Weight Unit Ounce',
      0x008D005C: 'Weight Unit Pound',
      0x008D0060: 'Calibration Count',
      0x008D0061: 'Re-Zero Count',
      0x008D0070: 'Scale Status',
      0x008D0071: 'Scale Status Fault',
      0x008D0072: 'Scale Status Stable at Center of Zero',
      0x008D0073: 'Scale Status In Motion',
      0x008D0074: 'Scale Status Weight Stable',
      0x008D0075: 'Scale Status Under Zero',
      0x008D0076: 'Scale Status Over Weight Limit',
      0x008D0077: 'Scale Status Requires Calibration',
      0x008D0078: 'Scale Status Requires Re-zeroing',
      0x008D0080: 'Zero Scale',
      0x008D0081: 'Enforced Zero Return',
      // Magnetic Stripe Reader
      0x008E0001: 'MSR Device Read-Only',
      0x008E0011: 'Track 1 Length',
      0x008E0012: 'Track 2 Length',
      0x008E0013: 'Track 3 Length',
      0x008E0014: 'Track JIS Length',
      0x008E0020: 'Track Data',
      0x008E0021: 'Track 1 Data',
      0x008E0022: 'Track 2 Data',
      0x008E0023: 'Track 3 Data',
      0x008E0024: 'Track JIS Data',
      // Camera Control
      0x00900020: 'Camera Auto-focus',
      0x00900021: 'Camera Shutter',
      // Arcade
      0x00910001: 'General Purpose IO Card',
      0x00910002: 'Coin Door',
      0x00910003: 'Watchdog Timer',
      0x00910030: 'General Purpose Analog Input State',
      0x00910031: 'General Purpose Digital Input State',
      0x00910032: 'General Purpose Optical Input State',
      0x00910033: 'General Purpose Digital Output State',
      0x00910034: 'Number of Coin Doors',
      0x00910035: 'Coin Drawer Drop Count',
      0x00910036: 'Coin Drawer Start',
      0x00910037: 'Coin Drawer Service',
      0x00910038: 'Coin Drawer Tilt',
      0x00910039: 'Coin Door Test',
      0x00910040: 'Coin Door Lockout',
      0x00910041: 'Watchdog Timeout',
      0x00910042: 'Watchdog Action',
      0x00910043: 'Watchdog Reboot',
      0x00910044: 'Watchdog Restart',
      0x00910045: 'Alarm Input',
      0x00910046: 'Coin Door Counter',
      0x00910047: 'I/O Direction Mapping',
      0x00910048: 'Set I/O Direction',
      0x00910049: 'Extended Optical Input State',
      0x0091004A: 'Pin Pad Input State',
      0x0091004B: 'Pin Pad Status',
      0x0091004C: 'Pin Pad Output',
      0x0091004D: 'Pin Pad Command',
      // FIDO Alliance
      0xF1D00001: 'U2F Authenticator Device',
      0xF1D00020: 'Input Report Data',
      0xF1D00021: 'Output Report Data',
    };
    
    const usagePage = usage >>> 16;
    const usageId = usage & 0xffff;
    const usageString = `${hex16(usagePage)}:${hex16(usageId)}`;
  
    // Consider any usage ID from the Button, Ordinal, Unicode, and Monitor Enumerated Values pages as valid usages.
    if (usagePage === 0x0009)
      return `${usageString} (${getUsagePageName(usagePage)} Button ${usageId})`;
    if (usagePage === 0x000A)
      return `${usageString} (${getUsagePageName(usagePage)} Instance ${usageId})`;
    if (usagePage === 0x0010)
      return `${usageString} (${getUsagePageName(usagePage)} U+${hex16(usageId)})`;
    if (usagePage === 0x0081)
      return `${usageString} (${getUsagePageName(usagePage)} ENUM_${usageId})`;
  
    // Include the usage name, if available.
    if (usage in kUsageNames)
      return `${usageString} (${getUsagePageName(usagePage)} > ${kUsageNames[usage]})`;
  
    return `${usageString} (${getUsagePageName(usagePage)} usage 0x${hex16(usageId)})`;
  };
  